@charset "utf-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosanstc.css);/*思源黑體 Noto Sans TC*/

        :root {
		/* Bootstrap 主要色系 */
			  --bs-primary: #BF1F3C;       /* 主色 (覆蓋 bootstrap primary) */
			  --bs-secondary: #6c757d;     /* 次色 */
			  --bs-success: #660000;
			  --bs-info: #0dcaf0;
			  --bs-warning: #ffc107;
			  --bs-danger: #e63946;        /* 強調色 → danger */
			  --bs-light: #f8f9fa;
			  --bs-dark: #212529;	

			
            --primary-color: #BF1F3C; /* 粉紅色系 */
            --secondary-color: #b3fab8; /* 淺粉色 */
            --light-color: #F2E4E4; /* 淡粉色 */
            --dark-color: #660000; /* 深粉色 */
            --accent-color: #D9777F; /* 紫色點綴 */
        }
        a {
            text-decoration: none  !important;
        }
        .navbar { 
            background: #b81c22;
            box-shadow: 0 2px 10px rgba(0,0,0,0.1);
        }
        .navbar-brand, .nav-link { 
            color: white !important; 
            font-weight: 500;
        }
        
        .product-card { 
            transition: transform 0.3s, box-shadow 0.3s; 
            margin-bottom: 20px;
            border: 1px solid #f0f0f0;
            border-radius: 12px;
            overflow: hidden;
            background: white;
        }
        .product-card:hover { 
            transform: translateY(-8px); 
            box-shadow: 0 10px 25px rgba(231, 84, 128, 0.15);
        }
        .product-img { 
            height: 222px; 
            object-fit: cover; 
            width: 100%;
            background: var(--light-color);
        }
        .product-price { 
            color: var(--primary-color); 
            font-weight: bold;
            font-size: 1.2em;
        }
        .original-price {
            color: #9e9e9e;
            font-size: 0.9em;
        }
        .discount-badge {
            position: absolute;
            top: 10px;
            left: 10px;
            background: linear-gradient(45deg, var(--primary-color), var(--accent-color));
            color: white;
            padding: 6px 12px;
            border-radius: 20px;
            font-size: 0.8em;
            font-weight: bold;
            z-index: 1;
        }
        .sale-badge {
            position: absolute;
            top: 10px;
            right: 10px;
            background: linear-gradient(45deg, #FF6B6B, #FF8E53);
            color: white;
            padding: 6px 12px;
            border-radius: 20px;
            font-size: 0.8em;
            font-weight: bold;
            z-index: 1;
        }
        .new-badge {
            position: absolute;
            top: 10px;
            right: 10px;
            background: linear-gradient(45deg, #4ECDC4, #44A08D);
            color: white;
            padding: 6px 12px;
            border-radius: 20px;
            font-size: 0.8em;
            font-weight: bold;
            z-index: 1;
        }
        
        .category-sidebar { 
            background: linear-gradient(135deg, var(--light-color) 0%, #ffffff 100%);
            border-radius: 12px; 
            padding: 20px;
            margin-bottom: 20px;
            border: 1px solid #f8f8f8;
        }
        .category-list a { 
            color: var(--dark-color); 
            text-decoration: none; 
            display: block; 
            padding: 12px 0;
            border-bottom: 1px solid #f0f0f0;
            transition: all 0.3s ease;
            font-weight: 500;
        }
        .category-list a:hover { 
            color: var(--primary-color); 
            background-color: rgba(231, 84, 128, 0.05);
            padding-left: 15px;
            transform: translateX(5px);
        }
        .category-list a:last-child {
            border-bottom: none;
        }
        
        .section-title {
            border-left: 4px solid var(--primary-color);
            padding-left: 20px;
            margin: 40px 0 25px 0;
            color: var(--dark-color);
            font-weight: 600;
            font-size: 1.5em;
        }
        
        .hero-section {
            background: linear-gradient(135deg, var(--primary-color) 0%, var(--accent-color) 100%);
            color: white;
            padding: 80px 0;
            margin-bottom: 50px;
            border-radius: 20px;
            text-align: center;
            position: relative;
            overflow: hidden;
        }
        .hero-section::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><polygon fill="rgba(255,255,255,0.05)" points="0,1000 1000,0 1000,1000"/></svg>');
        }
        
        .price-container {
            display: flex;
            flex-direction: column;
            gap: 5px;
        }
        
        .btn-primary {
            background: linear-gradient(45deg, var(--primary-color), var(--accent-color));
            border: none;
            border-radius: 25px;
            padding: 10px 25px;
            font-weight: 500;
            transition: all 0.3s ease;
        }
        .btn-primary:hover {
            transform: translateY(-2px);
            box-shadow: 0 5px 15px rgba(231, 84, 128, 0.4);
        }
        
        .btn-outline-primary {
            border: 2px solid var(--primary-color);
            color: var(--primary-color);
            border-radius: 25px;
           /* padding: 8px 20px;*/
            font-weight: 500;
            transition: all 0.3s ease;
        }
        .btn-outline-primary:hover {
            background: var(--primary-color);
            color: white;
            transform: translateY(-2px);
        }
        
        /* 搜索框样式 */
        .search-box {
            background: rgba(255, 255, 255, 0.95);
            padding: 20px;
            border-radius: 15px;
            margin-bottom: 0px;
            box-shadow: 0 5px 15px rgba(0,0,0,0.08);
        }
        
        .search-type-select {
            border-top-right-radius: 0;
            border-bottom-right-radius: 0;
            border-right: none;
            border-color: #e0e0e0;
        }
        .search-input {
            border-top-left-radius: 0;
            border-bottom-left-radius: 0;
            border-color: #e0e0e0;
        }
        
        .stats-card {
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            border-radius: 15px;
            padding: 20px;
            text-align: center;
            margin-bottom: 20px;
        }
        
        .product-category {
            font-size: 0.85em;
            color: var(--accent-color);
            font-weight: 500;
            margin-bottom: 5px;
        }
        
        .benefit-tag {
            display: inline-block;
            background: rgba(231, 84, 128, 0.1);
            color: var(--primary-color);
            padding: 4px 12px;
            border-radius: 15px;
            font-size: 0.8em;
            margin-right: 5px;
            margin-bottom: 5px;
        }
        
        /* 響應式調整 */
        @media (max-width: 768px) {
            .hero-section {
                padding: 40px 0;
                margin-bottom: 30px;
            }
            .hero-section h1 {
                font-size: 2rem;
            }
            .hero-section p.lead {
                font-size: 1.2rem;
            }
        }

	
.btn-primary {
    background-color: var(--bs-primary) !important;
    border-color: var(--bs-primary) !important;
}
.category-group {
    margin-bottom: 10px;
}

.large-category {
    display: block;
    padding: 8px 15px;
    color: #333;
    text-decoration: none;
    border-left: 3px solid #28a745;
    margin-bottom: 5px;
}

.large-category:hover {
    background-color: #f8f9fa;
    color: #28a745;
}

.mid-category-list {
    margin-left: 20px;
    border-left: 1px solid #dee2e6;
    padding-left: 10px;
}

.mid-category {
    display: block;
    padding: 5px 10px;
    color: #666;
    text-decoration: none;
    font-size: 0.9rem;
}

.mid-category:hover {
    background-color: #f8f9fa;
    color: #28a745;
}