@media (max-width: 480px) {

    /* 상품 리스트 2열 그리드 강제화 */
    #resultList,
    #randomRegionList {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px 10px !important;
    }

    /* 검색 결과 카드 스타일 최적화 */
    .result-card,
    .product-card {
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
    }

    .result-card:hover,
    .product-card:hover {
        transform: none !important;
    }

    .result-card-image,
    .product-card .image-container {
        height: 140px !important;
    }

    .result-card-image img,
    .product-card .image-container img {
        object-fit: cover !important;
    }

    .result-card-content,
    .product-card .content {
        padding: 10px 8px !important;
    }

    .result-card-title,
    .product-card h6 {
        font-size: 13px !important;
        margin-bottom: 4px !important;
        padding: 0 !important;
        line-height: 1.4 !important;
        height: 36px !important;
        display: -webkit-box !important;
        -webkit-line-clamp: 2;
        -webkit-box-orient: vertical;
        white-space: normal !important;
    }

    .result-card-price,
    .product-card .price {
        font-size: 15px !important;
        margin-bottom: 4px !important;
    }

    .product-card .region-info {
        font-size: 11px !important;
        margin-bottom: 4px !important;
    }

    /* 검색창 및 헤더 UI 최적화 */
    .search-section {
        margin-bottom: 16px !important;
    }

    .search-box {
        flex-wrap: wrap !important;
        gap: 8px !important;
        padding: 12px !important;
    }

    .search-box .form-control {
        height: 44px !important;
        font-size: 16px !important;
        /* iOS 줌인 방지 */
    }

    .search-box .btn-primary {
        width: 100% !important;
        height: 44px !important;
        justify-content: center !important;
    }

    .search-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 16px !important;
        gap: 12px !important;
    }

    .search-header-right {
        width: 100% !important;
    }

    .search-info-badge {
        width: 100% !important;
        justify-content: space-between !important;
        padding: 10px 12px !important;
    }

    /* 필터 패널 최적화 */
    .filter-content {
        padding: 16px 12px !important;
    }

    .filter-row-grid {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }

    .filter-group {
        margin-bottom: 0 !important;
    }

    .filter-group label {
        font-size: 14px !important;
        margin-bottom: 6px !important;
    }

    .form-control {
        height: 44px !important;
        font-size: 16px !important;
    }

    .keyword-input-group {
        display: flex;
        gap: 8px;
    }

    .keyword-input-group .btn-outline {
        padding: 0 16px !important;
        white-space: nowrap;
    }

    /* 가격 정책 섹션 */
    .pricing-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
        max-width: 100% !important;
        padding: 0 !important;
    }

    .pricing-card {
        padding: 12px !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    .pricing-card .plan-name {
        font-size: 14px !important;
        margin-bottom: 8px !important;
    }

    .pricing-card .plan-price {
        font-size: 24px !important;
        margin-bottom: 12px !important;
    }

    .pricing-card .plan-price .period {
        font-size: 11px !important;
    }

    .pricing-card .plan-features {
        margin-bottom: 16px !important;
    }

    .pricing-card .plan-features li {
        padding: 4px 0 !important;
        font-size: 11px !important;
        gap: 4px !important;
    }

    .pricing-card .plan-features li i {
        font-size: 12px !important;
    }

    .pricing-card .btn-plan {
        padding: 8px !important;
        font-size: 12px !important;
    }

    /* 인트로 섹션 */
    .intro-section {
        padding: 24px 16px !important;
        margin-bottom: 24px !important;
    }

    .intro-title {
        font-size: 22px !important;
        word-break: keep-all;
    }

    .intro-features {
        display: grid !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 10px !important;
    }

    .feature-item {
        width: auto !important;
        justify-content: flex-start !important;
        font-size: 12px !important;
        padding: 8px 12px !important;
    }

    /* 결과 섹션 헤더 */
    .result-section .section-header {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }

    .result-section .section-header-right {
        width: 100% !important;
        justify-content: space-between !important;
    }

    /* 여백 조정 */
    .main-content {
        padding-top: 60px !important;
        width: 100% !important;
        max-width: 100vw !important;
        overflow-x: hidden !important;
    }

    .content-container {
        padding: 0 12px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .result-section,
    #randomRegionSection {
        padding: 16px !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    body {
        overflow-x: hidden !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    html {
        overflow-x: hidden !important;
        width: 100% !important;
        max-width: 100vw !important;
    }

    /* 검색 조건 정보 숨기기 */
    #resultFilterInfo {
        display: none !important;
    }

    /* 상세 필터 패널 압축 */
    .detail-filter-panel {
        margin-bottom: 16px !important;
    }

    .filter-panel-header {
        padding: 12px 16px !important;
    }

    .filter-panel-header h3 {
        font-size: 14px !important;
        margin: 0 !important;
    }

    .filter-header-actions {
        gap: 8px !important;
    }

    .sort-group-inline label {
        font-size: 12px !important;
    }

    .sort-group-inline .form-control-sm {
        padding: 4px 8px !important;
        font-size: 12px !important;
        min-width: 90px !important;
    }

    .filter-panel-content {
        padding: 16px !important;
    }

    .filter-row-keywords {
        gap: 12px !important;
        margin-bottom: 16px !important;
    }

    .filter-group {
        margin-bottom: 16px !important;
    }

    .filter-group label {
        font-size: 12px !important;
        margin-bottom: 8px !important;
    }

    .keyword-input-group {
        gap: 6px !important;
        margin-bottom: 8px !important;
    }

    .keyword-input-group .btn-sm {
        padding: 6px 12px !important;
        font-size: 11px !important;
    }

    .keywords-list {
        gap: 6px !important;
        min-height: 28px !important;
    }

    .keyword-tag {
        padding: 4px 8px !important;
        font-size: 11px !important;
    }

    .price-range-group {
        gap: 8px !important;
    }

    .price-range-group input {
        font-size: 14px !important;
        padding: 8px 12px !important;
    }

    .filter-actions {
        margin-top: 16px !important;
        gap: 8px !important;
    }

    .filter-actions button {
        padding: 8px 16px !important;
        font-size: 12px !important;
    }

    .modal-box {
        width: 95% !important;
        padding: 24px 16px !important;
    }

    .subscription-plans-table {
        margin-top: 10px !important;
        display: block;
        overflow-x: auto;
        white-space: nowrap;
    }

    .subscription-plans-table th,
    .subscription-plans-table td {
        padding: 10px 8px !important;
        font-size: 13px !important;
    }

    .subscription-plans-table .plan-name {
        font-size: 14px !important;
    }

    .modal-close-btn {
        padding: 8px !important;
    }
}