.software-info {
    padding: 25px;
    border: 1px solid #e8e8e8;
    margin: 20px 0;
    background: #ffffff;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    border-radius: 8px;
}

.software-info-content h3 {
    font-size: 20px;
    color: #333;
    margin: 0 0 20px 0;
    padding-bottom: 15px;
    border-bottom: 2px solid #f0f0f0;
}

.software-info-content p {
    margin: 8px 0;
    color: #555;
    font-size: 15px;
    line-height: 1.6;
}

.software-info-content a {
    color: #2271b1;
    text-decoration: none;
    transition: color 0.2s;
}

.software-info-content a:hover {
    color: #135e96;
}

.software-info-image {
    width: 100%;
    margin: 20px 0;
    text-align: center;
}

.software-info-image img {
    width: 100%;
    height: auto;
    display: block;
}

.software-buttons {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #f0f0f0;
}

.software-buttons .button {
    display: inline-flex;
    align-items: center;
    margin: 5px 10px 5px 0;
    padding: 8px 16px;
    background: #2c2f34;
    color: #fff !important;
    text-decoration: none;
    border-radius: 4px;
    font-size: 14px;
    transition: all 0.2s ease;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.software-buttons .button:hover {
    background: #23262a;
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 2px 5px rgba(0,0,0,0.15);
}

.software-buttons .button:visited {
    color: #fff !important;
}

.event-countdown {
    background: #fff8e5;
    border: 1px solid #ffe5b4;
    padding: 15px;
    margin: 15px 0;
    border-radius: 6px;
}

.countdown-text {
    color: #856404;
    margin: 0;
    font-weight: 600;
    font-size: 15px;
}

.days-remaining {
    color: #dc3545;
    font-size: 1.2em;
    font-weight: 700;
}

.event-end-date {
    color: #666;
    margin: 8px 0 0 0;
    font-size: 13px;
}

.event-ended {
    color: #721c24;
    background: #ffeaed;
    border: 1px solid #ffd0d5;
    padding: 12px 15px;
    margin: 15px 0;
    border-radius: 6px;
    font-weight: 500;
}

.hours-remaining {
    color: #dc3545;
    font-size: 1.2em;
    font-weight: 700;
}

@media (max-width: 768px) {
    .software-info {
        padding: 20px;
    }
    
    .software-info-image {
        margin: 15px 0;
    }
    
    .software-buttons .button {
        margin: 8px 8px 8px 0;
    }
}

.operating-system-group {
    margin: 15px 0;
}

.os-checkbox-group {
    margin-top: 8px;
    display: flex;
    gap: 20px;
}

.os-checkbox {
    display: flex;
    align-items: center;
    font-weight: normal;
    cursor: pointer;
}

.os-checkbox input[type="checkbox"] {
    margin-right: 6px;
}

.os-checkbox:hover {
    color: #2271b1;
}

.software-price {
    margin: 15px 0;
}

.software-price .price {
    margin: 0;
    line-height: 1.4;
}

.software-price .sale-price {
    color: #e03131;
    font-size: 1.2em;
    font-weight: bold;
}

.software-price .original-price {
    color: #868e96;
    text-decoration: line-through;
    margin-left: 8px;
}

.software-price .regular-price {
    color: #e03131;
    font-size: 1.2em;
    font-weight: bold;
}

/* WordPress 相關資訊區塊樣式 */
.wordpress-theme-info,
.wordpress-plugin-info {
    margin: 20px 0;
    padding: 15px;
    background: #f8f9fa;
    border: 1px solid #e9ecef;
    border-radius: 6px;
}

.wordpress-theme-info h4,
.wordpress-plugin-info h4 {
    margin: 0 0 15px 0;
    padding-bottom: 10px;
    border-bottom: 1px solid #e9ecef;
    color: #23282d;
    font-size: 16px;
    font-weight: 600;
}

.wordpress-theme-info p,
.wordpress-plugin-info p {
    margin: 10px 0;
    color: #555;
    font-size: 14px;
    line-height: 1.6;
}

/* 確保 WordPress 資訊區塊在按鈕前面 */
.software-buttons {
    clear: both;
    margin-top: 20px;
}

@media (max-width: 768px) {
    .wordpress-theme-info,
    .wordpress-plugin-info {
        padding: 12px;
    }
}
