/**
 * Global Theme Colors - GoStore
 * 
 * Two color schemes:
 * 1. Courier Theme: Green & Dark Green (for delivery services)
 * 2. Marketplace Theme: Orange & Dark Orange (for e-commerce)
 */

/* ============================================
   ROOT VARIABLES - Global Color Definitions
   ============================================ */

:root {
    /* Courier Theme Colors (Green) */
    --courier-primary: #2e7d32;
    --courier-primary-dark: #1b5e20;
    --courier-primary-light: #4caf50;
    --courier-accent: #66bb6a;
    --courier-hover: #388e3c;
    --courier-gradient: linear-gradient(135deg, #1b5e20 0%, #2e7d32 100%);
    --courier-gradient-light: linear-gradient(135deg, #2e7d32 0%, #4caf50 100%);

    /* Marketplace Theme Colors (Orange) */
    --marketplace-primary: #FF6B4A;
    --marketplace-primary-dark: #EE4D2D;
    --marketplace-primary-light: #FF8C6B;
    --marketplace-accent: #FFB444;
    --marketplace-hover: #D73211;
    --marketplace-gradient: linear-gradient(135deg, #EE4D2D 0%, #FF6B4A 100%);
    --marketplace-gradient-light: linear-gradient(135deg, #FF6B4A 0%, #FFB444 100%);

    /* Neutral Colors (Shared) */
    --success-color: #52c41a;
    --warning-color: #faad14;
    --danger-color: #ff4d4f;
    --info-color: #1890ff;
    --gold-color: #FFD700;

    /* Text Colors */
    --text-primary: #333333;
    --text-secondary: #666666;
    --text-muted: #999999;
    --text-light: #ffffff;

    /* Background Colors */
    --bg-light: #f5f5f5;
    --bg-white: #ffffff;
    --bg-dark: #1a202c;
}

/* ============================================
   MARKETPLACE THEME CLASSES
   ============================================ */

/* Primary Backgrounds */
.marketplace-bg-primary {
    background: var(--marketplace-gradient) !important;
}

.marketplace-bg-solid {
    background-color: var(--marketplace-primary) !important;
}

.marketplace-bg-light {
    background: var(--marketplace-gradient-light) !important;
}

.marketplace-bg-hover:hover {
    background-color: var(--marketplace-hover) !important;
}

/* Text Colors */
.marketplace-text-primary {
    color: var(--marketplace-primary) !important;
}

.marketplace-text-dark {
    color: var(--marketplace-primary-dark) !important;
}

/* Buttons */
.btn-marketplace-primary {
    background: var(--marketplace-gradient);
    border: none;
    color: white;
    font-weight: 600;
    transition: all 0.3s ease;
}

.btn-marketplace-primary:hover {
    background: linear-gradient(135deg, #D73211 0%, #EE4D2D 100%);
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(238, 77, 45, 0.3);
    color: white;
}

.btn-marketplace-outline {
    background: transparent;
    border: 2px solid var(--marketplace-primary);
    color: var(--marketplace-primary);
    font-weight: 600;
    transition: all 0.3s ease;
}

.btn-marketplace-outline:hover {
    background: var(--marketplace-gradient);
    color: white;
    border-color: var(--marketplace-primary);
}

/* Badges */
.badge-marketplace {
    background: var(--marketplace-gradient);
    color: white;
    font-weight: 600;
}

/* Borders */
.border-marketplace {
    border-color: var(--marketplace-primary) !important;
}

/* Cards */
.card-marketplace {
    border: 2px solid transparent;
    transition: all 0.3s ease;
}

.card-marketplace:hover {
    border-color: var(--marketplace-primary);
    box-shadow: 0 8px 25px rgba(238, 77, 45, 0.15);
    transform: translateY(-5px);
}

/* Headers */
.marketplace-header {
    background: var(--marketplace-gradient);
    color: white;
}

.marketplace-navbar {
    background: var(--marketplace-gradient) !important;
}

.marketplace-navbar .nav-link {
    color: rgba(255, 255, 255, 0.9) !important;
}

.marketplace-navbar .nav-link:hover {
    color: var(--gold-color) !important;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 8px;
}

/* ============================================
   COURIER THEME CLASSES
   ============================================ */

/* Primary Backgrounds */
.courier-bg-primary {
    background: var(--courier-gradient) !important;
}

.courier-bg-solid {
    background-color: var(--courier-primary) !important;
}

.courier-bg-light {
    background: var(--courier-gradient-light) !important;
}

.courier-bg-hover:hover {
    background-color: var(--courier-hover) !important;
}

/* Text Colors */
.courier-text-primary {
    color: var(--courier-primary) !important;
}

.courier-text-dark {
    color: var(--courier-primary-dark) !important;
}

/* Buttons */
.btn-courier-primary {
    background: var(--courier-gradient);
    border: none;
    color: white;
    font-weight: 600;
    transition: all 0.3s ease;
}

.btn-courier-primary:hover {
    background: linear-gradient(135deg, #1b5e20 0%, #388e3c 100%);
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(46, 125, 50, 0.3);
    color: white;
}

.btn-courier-outline {
    background: transparent;
    border: 2px solid var(--courier-primary);
    color: var(--courier-primary);
    font-weight: 600;
    transition: all 0.3s ease;
}

.btn-courier-outline:hover {
    background: var(--courier-gradient);
    color: white;
    border-color: var(--courier-primary);
}

/* Badges */
.badge-courier {
    background: var(--courier-gradient);
    color: white;
    font-weight: 600;
}

/* Borders */
.border-courier {
    border-color: var(--courier-primary) !important;
}

/* Cards */
.card-courier {
    border: 2px solid transparent;
    transition: all 0.3s ease;
}

.card-courier:hover {
    border-color: var(--courier-primary);
    box-shadow: 0 8px 25px rgba(46, 125, 50, 0.15);
    transform: translateY(-5px);
}

/* Headers */
.courier-header {
    background: var(--courier-gradient);
    color: white;
}

.courier-navbar {
    background: var(--courier-gradient) !important;
}

.courier-navbar .nav-link {
    color: rgba(255, 255, 255, 0.9) !important;
}

.courier-navbar .nav-link:hover {
    color: var(--gold-color) !important;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 8px;
}

/* ============================================
   SHARED UTILITY CLASSES
   ============================================ */

/* Icons with gradient */
.icon-marketplace {
    background: var(--marketplace-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.icon-courier {
    background: var(--courier-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Loading Spinner */
.spinner-marketplace {
    border-top-color: var(--marketplace-primary) !important;
}

.spinner-courier {
    border-top-color: var(--courier-primary) !important;
}

/* Links */
.link-marketplace {
    color: var(--marketplace-primary);
    text-decoration: none;
    transition: all 0.3s ease;
}

.link-marketplace:hover {
    color: var(--marketplace-hover);
    text-decoration: underline;
}

.link-courier {
    color: var(--courier-primary);
    text-decoration: none;
    transition: all 0.3s ease;
}

.link-courier:hover {
    color: var(--courier-hover);
    text-decoration: underline;
}

/* Price Tags */
.price-marketplace {
    color: var(--marketplace-primary-dark);
    font-weight: 700;
    font-size: 1.5rem;
}

/* Status Badges */
.status-available {
    background: linear-gradient(45deg, #52c41a, #73d13d);
    color: white;
}

.status-out-of-stock {
    background: linear-gradient(45deg, #ff4d4f, #ff7875);
    color: white;
}

/* Rating Stars */
.stars-marketplace .fa-star {
    color: var(--marketplace-accent);
}

/* Shadow Effects */
.shadow-marketplace {
    box-shadow: 0 4px 15px rgba(238, 77, 45, 0.2);
}

.shadow-marketplace-lg {
    box-shadow: 0 8px 30px rgba(238, 77, 45, 0.25);
}

.shadow-courier {
    box-shadow: 0 4px 15px rgba(46, 125, 50, 0.2);
}

.shadow-courier-lg {
    box-shadow: 0 8px 30px rgba(46, 125, 50, 0.25);
}

/* ============================================
   RESPONSIVE ADJUSTMENTS
   ============================================ */

@media (max-width: 768px) {

    .marketplace-navbar,
    .courier-navbar {
        padding: 0.5rem 0 !important;
    }

    .btn-marketplace-primary,
    .btn-courier-primary {
        padding: 0.6rem 1.2rem;
        font-size: 0.9rem;
    }
}

/* ============================================
   PRINT STYLES
   ============================================ */

@media print {

    .marketplace-bg-primary,
    .courier-bg-primary,
    .marketplace-gradient,
    .courier-gradient {
        background: white !important;
        color: black !important;
    }
}