/**
 * FUCHS Manager — Front-End Styles
 *
 * @package FUCHS_Manager
 * @since   1.0.0
 */

/* =========================================================================
   Variables
   ========================================================================= */
:root {
    --fuchs-red:       #c8102e;
    --fuchs-red-dark:  #a00d24;
    --fuchs-black:     #1a1a1a;
    --fuchs-grey:      #f5f5f5;
    --fuchs-border:    #ddd;
    --fuchs-text:      #333;
    --fuchs-radius:    4px;
    --fuchs-font:      inherit;
}

/* =========================================================================
   Notices / General
   ========================================================================= */
.fuchs-notice {
    background: #fff3cd;
    border-left: 4px solid #ffc107;
    padding: .75em 1em;
    margin-bottom: 1.5em;
    border-radius: var(--fuchs-radius);
}

.fuchs-free-price {
    color: #46b450;
    font-weight: 700;
}

/* =========================================================================
   Banner
   ========================================================================= */
.fuchs-banner-wrap {
    width: 100%;
    overflow: hidden;
    margin-bottom: 2em;
    line-height: 0;
}
.fuchs-banner-wrap .fuchs-banner-img {
    width: 100%;
    height: var(--fuchs-banner-height, 300px);
    object-fit: cover;
    display: block;
}
.fuchs-banner-link { display: block; }

/* =========================================================================
   Bulk Order Form
   ========================================================================= */
.fuchs-bulk-order-form {
    max-width: 960px;
    margin: 0 auto 2em;
    font-family: var(--fuchs-font);
}

.fuchs-bulk-title {
    color: var(--fuchs-red);
    margin-bottom: .25em;
}

.fuchs-bulk-intro {
    margin-bottom: 1.5em;
    color: #666;
}

.fuchs-bulk-feedback {
    padding: .75em 1em;
    border-radius: var(--fuchs-radius);
    margin-bottom: 1em;
    font-weight: 600;
}
.fuchs-bulk-feedback.success {
    background: #d4edda;
    color: #155724;
    border-left: 4px solid #28a745;
}
.fuchs-bulk-feedback.error {
    background: #f8d7da;
    color: #721c24;
    border-left: 4px solid #dc3545;
}

.fuchs-bulk-table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 1.5em;
    background: #fff;
    border: 1px solid var(--fuchs-border);
    border-radius: var(--fuchs-radius);
    overflow: hidden;
}

.fuchs-bulk-table thead tr {
    background: var(--fuchs-red);
    color: #fff;
}

.fuchs-bulk-table th,
.fuchs-bulk-table td {
    padding: .6em 1em;
    text-align: left;
    border-bottom: 1px solid var(--fuchs-border);
    vertical-align: middle;
}

.fuchs-bulk-table tbody tr:hover {
    background: var(--fuchs-grey);
}

.fuchs-bulk-thumb {
    width: 40px;
    height: 40px;
    object-fit: cover;
    border-radius: 2px;
    vertical-align: middle;
    margin-left: .5em;
}

.fuchs-variant-select {
    max-width: 220px;
}

.fuchs-qty-input {
    width: 70px;
    padding: .3em .5em;
    border: 1px solid var(--fuchs-border);
    border-radius: var(--fuchs-radius);
}

.fuchs-add-single-btn {
    background: var(--fuchs-red) !important;
    color: #fff !important;
    border-color: var(--fuchs-red) !important;
    font-size: .85em !important;
}
.fuchs-add-single-btn:hover {
    background: var(--fuchs-red-dark) !important;
    border-color: var(--fuchs-red-dark) !important;
}

.fuchs-bulk-footer {
    display: flex;
    gap: 1em;
    flex-wrap: wrap;
    margin-top: 1em;
}

.fuchs-view-cart-btn {
    border-color: var(--fuchs-red) !important;
    color: var(--fuchs-red) !important;
}

.fuchs-checkout-btn {
    background: var(--fuchs-red) !important;
    border-color: var(--fuchs-red) !important;
    color: #fff !important;
}

/* =========================================================================
   Coupon Manager
   ========================================================================= */
.fuchs-coupon-manager {
    max-width: 1024px;
    margin: 0 auto 2em;
    font-family: var(--fuchs-font);
}

.fuchs-coupon-manager h2 {
    color: var(--fuchs-red);
}

.fuchs-coupon-feedback {
    padding: .75em 1em;
    border-radius: var(--fuchs-radius);
    margin-bottom: 1em;
    font-weight: 600;
}

.fuchs-coupon-create-wrap {
    background: #fff;
    border: 1px solid var(--fuchs-border);
    border-radius: var(--fuchs-radius);
    padding: 1.5em;
    margin-bottom: 2em;
}

.fuchs-coupon-form {
    display: grid;
    gap: .75em;
}

.fuchs-form-row {
    display: flex;
    align-items: center;
    gap: .75em;
    flex-wrap: wrap;
}

.fuchs-form-row label {
    min-width: 260px;
    font-weight: 600;
    color: var(--fuchs-text);
}

.fuchs-form-row input[type="text"],
.fuchs-form-row input[type="number"],
.fuchs-form-row input[type="date"],
.fuchs-form-row input[type="email"],
.fuchs-form-row select {
    padding: .4em .6em;
    border: 1px solid var(--fuchs-border);
    border-radius: var(--fuchs-radius);
    min-width: 200px;
}

.fuchs-coupon-list-wrap {
    background: #fff;
    border: 1px solid var(--fuchs-border);
    border-radius: var(--fuchs-radius);
    padding: 1.5em;
}

.fuchs-coupon-table {
    width: 100%;
    border-collapse: collapse;
}

.fuchs-coupon-table th,
.fuchs-coupon-table td {
    padding: .55em .8em;
    text-align: left;
    border-bottom: 1px solid var(--fuchs-border);
    font-size: .9em;
}

.fuchs-coupon-table thead tr {
    background: var(--fuchs-red);
    color: #fff;
}

.fuchs-coupon-disabled td {
    opacity: .55;
}

.fuchs-coupon-actions {
    display: flex;
    gap: .4em;
}

.fuchs-badge {
    display: inline-block;
    padding: .2em .5em;
    border-radius: 3px;
    font-size: .8em;
    font-weight: 700;
}
.fuchs-badge-active   { background: #d4edda; color: #155724; }
.fuchs-badge-inactive { background: #f0f0f0; color: #777; }
.fuchs-badge-auto     { background: #fff3cd; color: #856404; }

/* =========================================================================
   Responsive
   ========================================================================= */
@media (max-width: 768px) {
    .fuchs-bulk-table thead { display: none; }
    .fuchs-bulk-table tbody tr {
        display: block;
        margin-bottom: 1em;
        border: 1px solid var(--fuchs-border);
        border-radius: var(--fuchs-radius);
    }
    .fuchs-bulk-table td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        border-bottom: 1px solid var(--fuchs-border);
    }
    .fuchs-form-row { flex-direction: column; align-items: flex-start; }
    .fuchs-form-row label { min-width: unset; }
}
