/* æºè½æ¨èç»ä»¶æ ·å¼ - éæ©é¨åä¼å - å¯¹æ¯åº¦ä¼åç */
.smart-recommend-container {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', sans-serif;
    max-width: 1200px;
    margin: 40px auto;
    padding: 0;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 12px 48px rgba(0, 0, 0, 0.12); /* å æ·±é´å½±: 0.08 -> 0.12 */
    overflow: hidden;
    border: 2px solid #e0e7ff; /* æ·»å è¾¹æ¡ */
}

/* è¡¨ååºå - æ°é£æ ¼ */
.sr-form-container {
    padding: 40px;
    background: #ffffff;
    position: relative;
}

.sr-form-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 5px; /* å ç²: 4px -> 5px */
    background: linear-gradient(90deg, #059669, #2563eb); /* å æ·±æ¸å: #10b981 -> #059669 */
}

.sr-form-title {
    font-size: 32px; /* å¢å¤§å­ä½: 28px -> 32px */
    font-weight: 800; /* å¢å å­é: 700 -> 800 */
    color: #000000; /* å æ·±é¢è²: #111827 -> #000000 */
    margin-bottom: 16px; /* å¢å¤§é´è·: 12px -> 16px */
    text-align: center;
    letter-spacing: -0.5px;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); /* æ·»å æå­é´å½± */
}

.sr-form-subtitle {
    font-size: 16px; /* å¢å¤§å­ä½: 15px -> 16px */
    color: #475569; /* å æ·±é¢è²: #6b7280 -> #475569 */
    text-align: center;
    margin-bottom: 40px;
    line-height: 1.6;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
    font-weight: 500; /* å¢å å­é */
}

.sr-form-item {
    margin-bottom: 32px; /* å¢å¤§é´è·: 28px -> 32px */
    position: relative;
}

.sr-form-label {
    display: block;
    font-size: 17px; /* å¢å¤§å­ä½: 16px -> 17px */
    font-weight: 700; /* å¢å å­é: 600 -> 700 */
    color: #1e293b; /* å æ·±é¢è²: #374151 -> #1e293b */
    margin-bottom: 14px; /* å¢å¤§é´è·: 12px -> 14px */
    padding-left: 4px;
    letter-spacing: -0.3px; /* ä¼åå­æ¯é´è· */
}

.sr-form-label::before {
    content: '';
    display: inline-block;
    width: 8px; /* å¢å¤§: 6px -> 8px */
    height: 8px; /* å¢å¤§: 6px -> 8px */
    background: #059669; /* å æ·±é¢è²: #10b981 -> #059669 */
    border-radius: 50%;
    margin-right: 10px; /* å¢å¤§é´è·: 8px -> 10px */
    vertical-align: middle;
    border: 2px solid #059669; /* æ·»å è¾¹æ¡ */
}

/* éæ©æ¡ - æ°é£æ ¼ */
.sr-form-select {
    width: 100%;
    padding: 18px 24px; /* å¢å¤§åè¾¹è·: 16px 20px -> 18px 24px */
    font-size: 17px; /* å¢å¤§å­ä½: 16px -> 17px */
    border: 3px solid #d1d5db; /* å ç²è¾¹æ¡: 2px -> 3px, å æ·±é¢è²: #e5e7eb -> #d1d5db */
    border-radius: 12px;
    background: #f8fafc; /* å æ·±èæ¯: #f9fafb -> #f8fafc */
    color: #1e293b; /* å æ·±é¢è²: #1f2937 -> #1e293b */
    cursor: pointer;
    transition: all 0.25s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E"); /* å æ·±ç®­å¤´é¢è² */
    background-repeat: no-repeat;
    background-position: right 20px center; /* è°æ´ä½ç½® */
    background-size: 20px; /* å¢å¤§å¾æ  */
    padding-right: 60px; /* å¢å¤§å³è¾¹è·: 50px -> 60px */
    font-weight: 600; /* å¢å å­é: 500 -> 600 */
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05); /* æ·»å é´å½± */
}

.sr-form-select:hover {
    background-color: #ffffff;
    border-color: #94a3b8; /* å æ·±æ¬åé¢è²: #9ca3af -> #94a3b8 */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); /* æ·»å æ¬åé´å½± */
}

.sr-form-select:focus {
    outline: none;
    border-color: #059669; /* å æ·±ç¦ç¹é¢è²: #10b981 -> #059669 */
    background-color: #ffffff;
    box-shadow: 0 0 0 5px rgba(5, 150, 105, 0.15); /* å¢å¤§ååææ: 4px -> 5px, 0.1 -> 0.15 */
}

.sr-form-select option {
    padding: 14px; /* å¢å¤§åè¾¹è·: 12px -> 14px */
    font-size: 16px; /* å¢å¤§å­ä½: 15px -> 16px */
    font-weight: 500;
}

/* éé¡¹åç»æ ·å¼ä¼å */
.sr-form-select option[value=""] {
    color: #64748b; /* å æ·±é¢è²: #9ca3af -> #64748b */
    font-style: italic;
    font-weight: 500;
}

.sr-form-select option:not([value=""]) {
    color: #1e293b; /* å æ·±é¢è²: #1f2937 -> #1e293b */
    padding: 16px; /* å¢å¤§åè¾¹è·: 14px -> 16px */
    font-weight: 500;
}

/* æäº¤æé® - æ°é£æ ¼ */
.sr-submit-btn {
    width: 100%;
    padding: 20px; /* å¢å¤§åè¾¹è·: 18px -> 20px */
    font-size: 18px; /* å¢å¤§å­ä½: 17px -> 18px */
    font-weight: 700; /* å¢å å­é: 600 -> 700 */
    background: linear-gradient(135deg, #059669 0%, #2563eb 100%); /* å æ·±æ¸å */
    color: white;
    border: none;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 28px; /* å¢å¤§é´è·: 24px -> 28px */
    letter-spacing: 0.5px;
    position: relative;
    overflow: hidden;
    border: 2px solid transparent; /* æ·»å è¾¹æ¡ */
    text-transform: uppercase; /* æ¹ä¸ºå¤§åå­æ¯ */
}

.sr-submit-btn:hover:not(:disabled) {
    transform: translateY(-3px); /* å¢å¤§ä¸ç§»è·ç¦»: -2px -> -3px */
    box-shadow: 0 16px 32px rgba(5, 150, 105, 0.3); /* å æ·±é´å½±: 0.25 -> 0.3 */
    border-color: #059669; /* æ·»å æ¬åè¾¹æ¡ */
}

.sr-submit-btn:active:not(:disabled) {
    transform: translateY(0);
}

.sr-submit-btn:disabled {
    background: linear-gradient(135deg, #94a3b8 0%, #64748b 100%); /* å æ·±ç¦ç¨ç¶æ */
    cursor: not-allowed;
    opacity: 0.8; /* æé«ä¸éæåº¦: 0.7 -> 0.8 */
    border-color: #cbd5e0; /* æ·»å ç¦ç¨è¾¹æ¡ */
}

/* å è½½ç¶æ - æ°é£æ ¼ */
.sr-loading {
    text-align: center;
    padding: 80px 20px;
}

.sr-loading-spinner {
    width: 70px; /* å¢å¤§: 60px -> 70px */
    height: 70px; /* å¢å¤§: 60px -> 70px */
    border: 5px solid rgba(5, 150, 105, 0.1); /* å ç²è¾¹æ¡: 4px -> 5px */
    border-top: 5px solid #059669; /* å ç²è¾¹æ¡: 4px -> 5px, å æ·±é¢è²: #10b981 -> #059669 */
    border-radius: 50%;
    animation: sr-spin 1s cubic-bezier(0.4, 0, 0.2, 1) infinite;
    margin: 0 auto 30px; /* å¢å¤§é´è·: 25px -> 30px */
}

@keyframes sr-spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

.sr-loading-text {
    font-size: 18px; /* å¢å¤§å­ä½: 16px -> 18px */
    color: #475569; /* å æ·±é¢è²: #4b5563 -> #475569 */
    font-weight: 600; /* å¢å å­é: 500 -> 600 */
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); /* æ·»å æå­é´å½± */
}

/* ååºå¼è®¾è®¡ */
@media (max-width: 768px) {
    .smart-recommend-container {
        margin: 20px;
        border-radius: 12px;
        border-width: 1px; /* ç§»å¨ç«¯è¾¹æ¡ç¨ç» */
    }
    
    .sr-form-container {
        padding: 30px 24px;
    }
    
    .sr-form-title {
        font-size: 28px; /* è°æ´å­ä½å¤§å° */
    }
    
    .sr-form-subtitle {
        font-size: 15px; /* è°æ´å­ä½å¤§å° */
        margin-bottom: 32px;
    }
    
    .sr-form-select {
        padding: 16px 20px; /* è°æ´åè¾¹è· */
        font-size: 16px; /* è°æ´å­ä½å¤§å° */
        border-width: 2px; /* ç§»å¨ç«¯è¾¹æ¡ç¨ç» */
    }
    
    .sr-submit-btn {
        padding: 18px; /* è°æ´åè¾¹è· */
        font-size: 17px; /* è°æ´å­ä½å¤§å° */
    }
}

@media (max-width: 480px) {
    .sr-form-container {
        padding: 24px 20px;
    }
    
    .sr-form-title {
        font-size: 24px; /* è°æ´å­ä½å¤§å° */
    }
    
    .sr-form-label {
        font-size: 16px; /* è°æ´å­ä½å¤§å° */
    }
}

/* ç»æåºå */
.sr-result-container {
    animation: sr-fadeIn 0.5s ease;
}

@keyframes sr-fadeIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

.sr-result-title {
    font-size: 24px; /* å¢å¤§å­ä½: 22px -> 24px */
    font-weight: 800; /* å¢å å­é: 600 -> 800 */
    color: #000000; /* å æ·±é¢è²: #2c3e50 -> #000000 */
    margin-bottom: 24px; /* å¢å¤§é´è·: 20px -> 24px */
    padding-bottom: 16px; /* å¢å¤§é´è·: 15px -> 16px */
    border-bottom: 3px solid #4f46e5; /* å ç²ä¸åçº¿: 2px -> 3px, å æ·±é¢è²: #667eea -> #4f46e5 */
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); /* æ·»å æå­é´å½± */
}

.sr-result-content {
    font-size: 17px; /* å¢å¤§å­ä½: 16px -> 17px */
    line-height: 1.8;
    color: #1e293b; /* å æ·±é¢è²: #333 -> #1e293b */
    padding: 24px; /* å¢å¤§åè¾¹è·: 20px -> 24px */
    background: #f5f7ff; /* å æ·±èæ¯: #f8f9ff -> #f5f7ff */
    border-radius: 12px; /* å¢å¤§åè§: 8px -> 12px */
    margin-bottom: 36px; /* å¢å¤§é´è·: 30px -> 36px */
    border: 2px solid #e0e7ff; /* æ·»å è¾¹æ¡ */
    font-weight: 500; /* å¢å å­é */
}

.sr-result-content strong {
    color: #4f46e5; /* å æ·±é¢è²: #667eea -> #4f46e5 */
    font-weight: 700; /* å¢å å­é: 600 -> 700 */
}

/* äº§ååºå */
.sr-products-section {
    margin-bottom: 36px; /* å¢å¤§é´è·: 30px -> 36px */
    padding: 24px; /* å¢å¤§åè¾¹è·: 20px -> 24px */
    background: white;
    border-radius: 12px; /* å¢å¤§åè§: 10px -> 12px */
    border: 2px solid #e0e7ff; /* å ç²è¾¹æ¡: 1px -> 2px, å æ·±é¢è² */
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08); /* æ·»å é´å½± */
}

.sr-section-title {
    font-size: 20px; /* å¢å¤§å­ä½: 18px -> 20px */
    font-weight: 800; /* å¢å å­é: 600 -> 800 */
    color: #000000; /* å æ·±é¢è²: #2c3e50 -> #000000 */
    margin-bottom: 24px; /* å¢å¤§é´è·: 20px -> 24px */
    display: flex;
    align-items: center;
    gap: 12px; /* å¢å¤§é´è·: 10px -> 12px */
    letter-spacing: -0.3px; /* ä¼åå­æ¯é´è· */
}

.sr-title-badge {
    background: #047857; /* å æ·±ç»¿è²: #48bb78 -> #047857 */
    color: white;
    padding: 6px 16px; /* å¢å¤§åè¾¹è·: 4px 12px -> 6px 16px */
    border-radius: 20px;
    font-size: 15px; /* å¢å¤§å­ä½: 14px -> 15px */
    font-weight: 700; /* å¢å å­é: 600 -> 700 */
    border: 2px solid #047857; /* æ·»å è¾¹æ¡ */
}

.sr-secondary-badge {
    background: #b45309; /* å æ·±æ©è²: #ed8936 -> #b45309 */
    border-color: #b45309;
}

/* äº§ååè¡¨ */
.sr-product-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 24px; /* å¢å¤§é´è·: 20px -> 24px */
}

.sr-product-card {
    border: 2px solid #e2e8f0; /* å ç²è¾¹æ¡: 1px -> 2px */
    border-radius: 12px; /* å¢å¤§åè§: 8px -> 12px */
    padding: 20px; /* å¢å¤§åè¾¹è·: 15px -> 20px */
    transition: all 0.3s ease;
    background: white;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); /* æ·»å é´å½± */
}

.sr-product-card:hover {
    transform: translateY(-4px); /* å¢å¤§ä¸ç§»è·ç¦»: -3px -> -4px */
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.15); /* å æ·±é´å½±: 0.1 -> 0.15 */
    border-color: #4f46e5; /* å æ·±æ¬åè¾¹æ¡é¢è²: #667eea -> #4f46e5 */
}

.sr-product-image {
    width: 100%;
    height: 180px;
    overflow: hidden;
    border-radius: 8px; /* å¢å¤§åè§: 6px -> 8px */
    margin-bottom: 20px; /* å¢å¤§é´è·: 15px -> 20px */
    border: 2px solid #e2e8f0; /* æ·»å è¾¹æ¡ */
}

.sr-product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.sr-product-card:hover .sr-product-image img {
    transform: scale(1.05);
}

.sr-product-title {
    font-size: 17px; /* å¢å¤§å­ä½: 16px -> 17px */
    font-weight: 800; /* å¢å å­é: 600 -> 800 */
    color: #000000; /* å æ·±é¢è²: #2c3e50 -> #000000 */
    margin-bottom: 8px; /* å¢å¤§é´è·: 5px -> 8px */
    line-height: 1.3;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); /* æ·»å æå­é´å½± */
}

.sr-product-brand {
    font-size: 15px; /* å¢å¤§å­ä½: 14px -> 15px */
    color: #475569; /* å æ·±é¢è²: #718096 -> #475569 */
    margin-bottom: 16px; /* å¢å¤§é´è·: 10px -> 16px */
    font-weight: 500; /* å¢å å­é */
}

.sr-product-meta {
    display: flex;
    align-items: center;
    gap: 12px; /* å¢å¤§é´è·: 10px -> 12px */
    margin-bottom: 20px; /* å¢å¤§é´è·: 15px -> 20px */
    flex-wrap: wrap;
}

.sr-product-price {
    font-size: 20px; /* å¢å¤§å­ä½: 18px -> 20px */
    font-weight: 800; /* å¢å å­é: 600 -> 800 */
    color: #b91c1c; /* å æ·±çº¢è²: #e53e3e -> #b91c1c */
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); /* æ·»å æå­é´å½± */
}

.sr-product-reports {
    font-size: 14px;
    color: #475569; /* å æ·±é¢è²: #718096 -> #475569 */
    background: #f1f5f9; /* å æ·±èæ¯: #f7fafc -> #f1f5f9 */
    padding: 5px 12px; /* å¢å¤§åè¾¹è·: 3px 8px -> 5px 12px */
    border-radius: 12px;
    font-weight: 600; /* å¢å å­é */
    border: 1px solid #e2e8f0; /* æ·»å è¾¹æ¡ */
}

.sr-product-type {
    font-size: 13px; /* å¢å¤§å­ä½: 12px -> 13px */
    font-weight: 700; /* å¢å å­é: 600 -> 700 */
    padding: 6px 14px; /* å¢å¤§åè¾¹è·: 3px 10px -> 6px 14px */
    border-radius: 12px;
    color: white;
    border: 2px solid transparent; /* æ·»å è¾¹æ¡ */
}

.sr-product-type.mild {
    background: #047857; /* å æ·±ç»¿è²: #38a169 -> #047857 */
    border-color: #047857;
}

.sr-product-type.balanced {
    background: #1d4ed8; /* å æ·±èè²: #3182ce -> #1d4ed8 */
    border-color: #1d4ed8;
}

.sr-product-type.strong {
    background: #b45309; /* å æ·±æ©è²: #dd6b20 -> #b45309 */
    border-color: #b45309;
}

.sr-product-stats {
    display: flex;
    justify-content: space-between;
    gap: 12px; /* å¢å¤§é´è·: 10px -> 12px */
    margin-bottom: 20px; /* å¢å¤§é´è·: 15px -> 20px */
}

.sr-stat-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 8px; /* æ·»å åè¾¹è· */
    background: #f8fafc; /* æ·»å èæ¯ */
    border-radius: 8px;
    border: 1px solid #e2e8f0; /* æ·»å è¾¹æ¡ */
    flex: 1;
}

.sr-stat-label {
    font-size: 12px;
    color: #475569; /* å æ·±é¢è²: #718096 -> #475569 */
    margin-bottom: 5px; /* å¢å¤§é´è·: 3px -> 5px */
    font-weight: 600; /* å¢å å­é */
    text-transform: uppercase; /* æ¹ä¸ºå¤§å */
    letter-spacing: 0.5px; /* æ·»å å­æ¯é´è· */
}

.sr-stat-value {
    font-size: 15px; /* å¢å¤§å­ä½: 14px -> 15px */
    font-weight: 800; /* å¢å å­é: 600 -> 800 */
    color: #000000; /* å æ·±é¢è²: #2d3748 -> #000000 */
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1); /* æ·»å æå­é´å½± */
}

.sr-view-detail-btn {
    width: 100%;
    padding: 12px; /* å¢å¤§åè¾¹è·: 10px -> 12px */
    background: #4f46e5; /* å æ·±èè²: #667eea -> #4f46e5 */
    color: white;
    border: none;
    border-radius: 8px; /* å¢å¤§åè§: 6px -> 8px */
    font-size: 15px; /* å¢å¤§å­ä½: 14px -> 15px */
    font-weight: 700; /* å¢å å­é: 500 -> 700 */
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: uppercase; /* æ¹ä¸ºå¤§å */
    letter-spacing: 0.5px; /* æ·»å å­æ¯é´è· */
    border: 2px solid #4f46e5; /* æ·»å è¾¹æ¡ */
}

.sr-view-detail-btn:hover {
    background: #4338ca; /* æ´æ·±èè²: #5a67d8 -> #4338ca */
    transform: translateY(-2px); /* æ·»å ä¸ç§»ææ */
    box-shadow: 0 4px 12px rgba(79, 70, 229, 0.3); /* æ·»å é´å½± */
}

/* éæ°æ¨èæé® */
.sr-restart-btn {
    display: block;
    width: 220px; /* å¢å¤§å®½åº¦: 200px -> 220px */
    margin: 36px auto 0; /* å¢å¤§é´è·: 30px -> 36px */
    padding: 14px 28px; /* å¢å¤§åè¾¹è·: 12px 24px -> 14px 28px */
    background: #475569; /* å æ·±ç°è²: #718096 -> #475569 */
    color: white;
    border: none;
    border-radius: 10px; /* å¢å¤§åè§: 8px -> 10px */
    font-size: 17px; /* å¢å¤§å­ä½: 16px -> 17px */
    font-weight: 700; /* å¢å å­é: 500 -> 700 */
    cursor: pointer;
    transition: all 0.3s ease;
    border: 2px solid #475569; /* æ·»å è¾¹æ¡ */
    text-transform: uppercase; /* æ¹ä¸ºå¤§å */
    letter-spacing: 0.5px; /* æ·»å å­æ¯é´è· */
}

.sr-restart-btn:hover {
    background: #334155; /* æ´æ·±ç°è²: #4a5568 -> #334155 */
    transform: translateY(-2px); /* å¢å¤§ä¸ç§»è·ç¦»: -1px -> -2px */
    box-shadow: 0 6px 20px rgba(71, 85, 105, 0.3); /* æ·»å é´å½± */
}

/* æ¨¡ææ¡ */
.sr-product-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1000;
}

.sr-modal-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.6); /* å æ·±é®ç½©: 0.5 -> 0.6 */
    backdrop-filter: blur(8px); /* å¢å¼ºæ¨¡ç³: 5px -> 8px */
}

.sr-modal-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    max-width: 500px;
    max-height: 90vh;
    overflow-y: auto;
    background: white;
    border-radius: 16px; /* å¢å¤§åè§: 12px -> 16px */
    padding: 36px; /* å¢å¤§åè¾¹è·: 30px -> 36px */
    box-shadow: 0 24px 72px rgba(0, 0, 0, 0.4); /* å æ·±é´å½±: 0.3 -> 0.4 */
    border: 2px solid #e0e7ff; /* æ·»å è¾¹æ¡ */
}

.sr-modal-close {
    position: absolute;
    top: 20px; /* å¢å¤§è·ç¦»: 15px -> 20px */
    right: 20px; /* å¢å¤§è·ç¦»: 15px -> 20px */
    width: 40px; /* å¢å¤§: 36px -> 40px */
    height: 40px; /* å¢å¤§: 36px -> 40px */
    background: #f1f5f9; /* å æ·±èæ¯: #f7fafc -> #f1f5f9 */
    border: 2px solid #e2e8f0; /* æ·»å è¾¹æ¡ */
    border-radius: 50%;
    font-size: 22px; /* å¢å¤§å­ä½: 20px -> 22px */
    color: #475569; /* å æ·±é¢è²: #718096 -> #475569 */
    cursor: pointer;
    transition: all 0.3s ease;
    font-weight: 700; /* å¢å å­é */
}

.sr-modal-close:hover {
    background: #e2e8f0; /* å æ·±æ¬åèæ¯: #e2e8f0 */
    color: #334155; /* æ´æ·±é¢è²: #4a5568 -> #334155 */
    border-color: #cbd5e0;
}

/* ååºå¼è®¾è®¡ */
@media (max-width: 768px) {
    .smart-recommend-container {
        padding: 15px;
        margin: 0 10px;
        border-width: 1px; /* ç§»å¨ç«¯è¾¹æ¡ç¨ç» */
    }
    
    .sr-form-container {
        padding: 24px; /* è°æ´åè¾¹è· */
    }
    
    .sr-product-list {
        grid-template-columns: 1fr;
    }
    
    .sr-modal-content {
        width: 95%;
        padding: 24px; /* è°æ´åè¾¹è· */
        border-width: 1px; /* ç§»å¨ç«¯è¾¹æ¡ç¨ç» */
    }
}

@media (max-width: 480px) {
    .sr-form-title {
        font-size: 24px; /* è°æ´å­ä½å¤§å° */
    }
    
    .sr-result-title {
        font-size: 20px; /* è°æ´å­ä½å¤§å° */
    }
    
    .sr-modal-close {
        width: 36px; /* è°æ´å¤§å° */
        height: 36px; /* è°æ´å¤§å° */
        font-size: 20px; /* è°æ´å­ä½å¤§å° */
    }
}

/* æ éç¢ä¼å */
@media (prefers-contrast: high) {
    .smart-recommend-container {
        border: 3px solid #000000;
    }
    
    .sr-form-title,
    .sr-result-title,
    .sr-section-title,
    .sr-product-title {
        color: #000000;
    }
    
    .sr-form-select,
    .sr-submit-btn,
    .sr-view-detail-btn,
    .sr-restart-btn {
        border: 2px solid #000000;
    }
}

/* æå°æ ·å¼ */
@media print {
    .smart-recommend-container {
        box-shadow: none;
        border: 2px solid #000000;
    }
    
    .sr-form-container::before {
        background: #000000;
    }
    
    .sr-form-title,
    .sr-result-title,
    .sr-section-title,
    .sr-product-title {
        color: #000000;
    }
    
    .sr-submit-btn,
    .sr-view-detail-btn,
    .sr-restart-btn {
        display: none; /* æå°æ¶éèæé® */
    }
}