/* Modern Theme */
.theme-modern {
    --primary-color: #667eea;
    --secondary-color: #764ba2;
    --accent-color: #f093fb;
    --background-color: #f8fafc;
    --text-color: #2d3748;
    --card-bg: rgba(255, 255, 255, 0.95);
    --border-color: #e2e8f0;
    --shadow: 0 20px 40px rgba(102, 126, 234, 0.1);
}

.theme-modern body {
    background: linear-gradient(135deg, #a4863d 0%, #333333 100%);
}

.theme-modern .container {
    background: var(--card-bg);
    backdrop-filter: blur(10px);
    border-radius: 20px;
    box-shadow: var(--shadow);
}

/* Classic Theme */
.theme-classic {
    --primary-color: #8B4513;
    --secondary-color: #D2691E;
    --accent-color: #CD853F;
    --background-color: #f5f5dc;
    --text-color: #2c1810;
    --card-bg: rgba(245, 245, 220, 0.95);
    --border-color: #d2b48c;
    --shadow: 0 20px 40px rgba(139, 69, 19, 0.2);
}

.theme-classic body {
    background: linear-gradient(135deg, #8B4513 0%, #D2691E 100%);
}

.theme-classic .container {
    background: var(--card-bg);
    backdrop-filter: blur(10px);
    border-radius: 15px;
    box-shadow: var(--shadow);
    border: 2px solid var(--border-color);
}

.theme-classic .btn {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border: 2px solid var(--accent-color);
    font-weight: 600;
}

/* Colorful Theme */
.theme-colorful {
    --primary-color: #ff6b6b;
    --secondary-color: #4ecdc4;
    --accent-color: #45b7d1;
    --background-color: #fef9e7;
    --text-color: #2c3e50;
    --card-bg: rgba(254, 249, 231, 0.95);
    --border-color: #f39c12;
    --shadow: 0 20px 40px rgba(255, 107, 107, 0.2);
}

.theme-colorful body {
    background: linear-gradient(135deg, #ff6b6b 0%, #4ecdc4 50%, #45b7d1 100%);
}

.theme-colorful .container {
    background: var(--card-bg);
    backdrop-filter: blur(10px);
    border-radius: 25px;
    box-shadow: var(--shadow);
    border: 3px solid var(--border-color);
}

.theme-colorful .btn {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border: 3px solid var(--accent-color);
    font-weight: 700;
    text-transform: uppercase;
}

/* Elegant Theme */
.theme-elegant {
    --primary-color: #2c3e50;
    --secondary-color: #34495e;
    --accent-color: #7f8c8d;
    --background-color: #ecf0f1;
    --text-color: #2c3e50;
    --card-bg: rgba(236, 240, 241, 0.95);
    --border-color: #bdc3c7;
    --shadow: 0 20px 40px rgba(44, 62, 80, 0.3);
}

.theme-elegant body {
    background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%);
}

.theme-elegant .container {
    background: var(--card-bg);
    backdrop-filter: blur(10px);
    border-radius: 10px;
    box-shadow: var(--shadow);
    border: 1px solid var(--border-color);
}

.theme-elegant .btn {
    background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
    border: 1px solid var(--accent-color);
    font-weight: 500;
    letter-spacing: 1px;
}

/* Apply theme variables */
.theme-modern,
.theme-classic,
.theme-colorful,
.theme-elegant {
    color: var(--text-color);
}

.theme-modern .btn,
.theme-classic .btn,
.theme-colorful .btn,
.theme-elegant .btn {
    color: white;
    transition: all 0.3s ease;
}

.theme-modern .btn:hover,
.theme-classic .btn:hover,
.theme-colorful .btn:hover,
.theme-elegant .btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

/* Theme-specific animations */
.theme-modern * {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.theme-classic * {
    transition: all 0.4s ease-in-out;
}

.theme-colorful * {
    transition: all 0.2s ease;
}

.theme-elegant * {
    transition: all 0.5s ease;
}

