/* 摩登扁平樣式 - 時尚簡約的現代設計 */
textarea, 
input[type="text"], 
input[type="password"], 
input[type="datetime"], 
input[type="datetime-local"], 
input[type="date"], 
input[type="month"], 
input[type="time"], 
input[type="week"], 
input[type="number"], 
input[type="email"], 
input[type="url"], 
input[type="search"], 
input[type="tel"], 
input[type="color"], 
.uneditable-input,
select {
     background: #f9f9f9 !important;
     border: 2px solid #eaeaea !important;
     border-radius: 4px !important;
     -moz-border-radius: 4px !important;
     -webkit-border-radius: 4px !important;
     color: #444444;
     padding: 12px 16px !important;
     box-shadow: none !important;
     -moz-box-shadow: none !important;
     -webkit-box-shadow: none !important;
     transition: all 0.2s ease-out !important;
     -webkit-transition: all 0.2s ease-out !important;
     -moz-transition: all 0.2s ease-out !important;
     margin: 6px 0 !important;
     font-weight: 400 !important;
     font-size: 14px !important;
     height: auto !important;
}

textarea:focus, 
input[type="text"]:focus, 
input[type="password"]:focus, 
input[type="datetime"]:focus, 
input[type="datetime-local"]:focus, 
input[type="date"]:focus, 
input[type="month"]:focus, 
input[type="time"]:focus, 
input[type="week"]:focus, 
input[type="number"]:focus, 
input[type="email"]:focus, 
input[type="url"]:focus, 
input[type="search"]:focus, 
input[type="tel"]:focus, 
input[type="color"]:focus, 
.uneditable-input:focus,
select:focus {
     background: #ffffff !important;
     border-color: #4b8a9c !important;
     outline: 0 !important;
}

/* 按鈕樣式 */
.btn, 
.button {
     border: none !important;
     border-radius: 4px !important;
     -moz-border-radius: 4px !important;
     -webkit-border-radius: 4px !important;
     padding: 10px 18px !important;
     font-size: 14px !important;
     font-weight: 500 !important;
     text-transform: uppercase !important;
     letter-spacing: 0.5px !important;
     transition: all 0.2s ease !important;
     -webkit-transition: all 0.2s ease !important;
     -moz-transition: all 0.2s ease !important;
     position: relative !important;
}

.btn-primary, 
.btn-primary.active, 
.btn-primary.disabled, 
.btn-primary[disabled] {
     background-color: #4b8a9c !important;
     color: white !important;
}

.btn-primary:hover, 
.btn-primary:focus {
     background-color: #3b7082 !important;
}

/* 不同按鈕類型樣式 */
.btn-success {
     background-color: #5cb85c !important;
}

.btn-success:hover {
     background-color: #4cae4c !important;
}

.btn-info {
     background-color: #5bc0de !important;
}

.btn-info:hover {
     background-color: #46b8da !important;
}

.btn-warning {
     background-color: #f0ad4e !important;
}

.btn-warning:hover {
     background-color: #eea236 !important;
}

.btn-danger {
     background-color: #d9534f !important;
}

.btn-danger:hover {
     background-color: #d43f3a !important;
}

.btn-default {
     background-color: #ffffff !important;
     border: 1px solid #ccc !important;
     color: #333 !important;
}

.btn-default:hover {
     background-color: #e6e6e6 !important;
     border-color: #adadad !important;
}

/* 表格樣式優化 */
table.table {
     border-collapse: separate !important;
     border-spacing: 0 !important;
     border-radius: 4px !important;
     overflow: hidden !important;
}

.table > thead > tr > th {
     border-bottom: 2px solid #4b8a9c !important;
     background-color: #f5f5f5 !important;
     padding: 12px 8px !important;
}

/* 數量控制元素樣式 - 現代平面風格 */
.quantity-control {
    display: flex !important;
    align-items: center !important;
    border: 2px solid #eaeaea !important;
    border-radius: 4px !important;
    overflow: hidden !important;
    max-width: 120px !important;
    margin: 6px 0 !important;
    background: #f9f9f9 !important;
    transition: all 0.2s ease-out !important;
}

.quantity-control:hover {
    border-color: #d9d9d9 !important;
}

.btn-qty {
    background: #f0f0f0 !important;
    border: none !important;
    color: #444444 !important;
    height: 36px !important;
    width: 36px !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    padding: 0 !important;
}

.btn-qty:hover {
    background: #e0e0e0 !important;
    color: #333333 !important;
}

.cart-quantity-input {
    text-align: center !important;
    width: 40px !important;
    height: 36px !important;
    border: none !important;
    border-left: 1px solid #eaeaea !important;
    border-right: 1px solid #eaeaea !important;
    background: #f9f9f9 !important;
    color: #444444 !important;
    padding: 0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    margin: 0 !important;
}

.cart-quantity-input:focus {
    background: #ffffff !important;
    outline: none !important;
    box-shadow: none !important;
}