/* Theme Definitions */

/* 1. Default Dark (Original) */
:root {
    --bg-main: #0b0f19;
    --bg-main-rgb: 11 15 25;
    --bg-card: #151b2b;
    --bg-card-inner: #1a2035;
    --text-main: #ffffff;
    --text-body: #d1d5db;
    --text-muted: #9ca3af;
    --color-accent: #67bd1d;
    --color-accent-rgb: 103 189 29;
    --color-primary: #FFAC5B;
    --color-primary-rgb: 255 172 91;
    --border-color: rgba(255, 255, 255, 0.1);
    --glass-bg: rgba(255, 255, 255, 0.05);
    /* Slightly more visible */
    --glass-border: rgba(255, 255, 255, 0.12);
    --glass-border-rgb: 255 255 255;
    --input-bg: #f2f1ef;
    /* Light background requested by user */
    --input-border: rgba(255, 255, 255, 0.1);
    --input-focus-bg: #ffffff;
    --input-text: #1f2937;
    /* Dark text for light background */
    --input-placeholder: #6b7280;

    /* Specific overrides */
    --color-action-btn-bg: linear-gradient(90deg, #68bc1d 0%, #8ce635 50%, #68bc1d 100%);
    --color-action-btn-text: #ffffff;
    --color-status-indicator: #67bd1d;
    --color-usp-check: #649039;
    --color-usp-border: #67bd1d;
    --color-portfolio-link: #FFAC5B;
    --filter-client-logo: grayscale(100%) opacity(0.4);
    --color-contact-header-btn-text: #ffffff;
    --color-contact-icons: #67bd1d;
    --color-contact-subtitle: #67bd1d;
    --color-contact-profile-border: #67bd1d;
    --color-contact-profile-border: #67bd1d;
    --logo-mask: linear-gradient(to right, transparent, black 20%, black 80%, transparent);
    --logo-grayscale-opacity: 1;
    --logo-filter: none;
}

/* 2. Itsme Inspired (Light/Orange/Fresh) */
[data-theme="fresh-orange"] {
    --bg-main: #ffffff;
    --bg-main-rgb: 255 255 255;
    --bg-card: #ffffff;
    --bg-card-inner: #f9fafb;
    --text-main: #1f2937;
    --text-body: #4b5563;
    --text-muted: #6b7280;
    --color-accent: #FF4F00;
    --color-accent-rgb: 255 79 0;
    --color-primary: #1f2937;
    --color-primary-rgb: 31 41 55;
    --border-color: rgba(0, 0, 0, 0.1);
    --glass-bg: rgba(0, 0, 0, 0.04);
    --glass-border: #d8d8d8;
    --glass-border-rgb: 216 216 216;
    --input-bg: #f2f1ef;
    --input-border: rgba(0, 0, 0, 0.08);
    --input-focus-bg: #ffffff;
    --input-text: #1f2937;
    --input-placeholder: #6b7280;

    /* Specific overrides */
    --color-action-btn-bg: linear-gradient(90deg, #67bd1d 0%, #8ce635 50%, #67bd1d 100%);
    /* Keep Green */
    --color-action-btn-text: #ffffff;
    --color-status-indicator: #67bd1d;
    /* Keep Green */
    --color-usp-check: #ff4f00;
    /* Keep Green */
    --color-usp-border: #FF4F00;
    /* Orange */
    --color-portfolio-link: rgb(237, 147, 4);
    --filter-client-logo: none;
    --color-contact-header-btn-text: #ffffff;
    /* Default white, override on contact page */
    --color-contact-icons: #FF4F00;
    --color-contact-subtitle: #FF4F00;
    --color-contact-profile-border: #FF4F00;
    --color-contact-profile-border: #FF4F00;
    --logo-mask: none;
}

/* Light Theme Specific UI Refinements */
[data-theme="fresh-orange"] .bg-\[var\(--bg-card-inner\)\] {
    border: 1px solid #e4e4e4 !important;
}

[data-theme="fresh-orange"] .border-b {
    border-color: #d8d8d8 !important;
}

[data-theme="fresh-orange"] header,
[data-theme="fresh-orange"] footer,
[data-theme="fresh-orange"] footer div.border-t {
    border-color: #d8d8d8 !important;
}

/* Contact Page Specific Override */
body.contact-page .contact-page-btn {
    color: white;
}

:root[data-theme="fresh-orange"] body.contact-page .contact-page-btn {
    color: #4b5563 !important;
    border-color: rgba(75, 85, 99, 0.3) !important;
}

/* Theme Toggle Button Override for Light Theme */
[data-theme="fresh-orange"] #theme-toggle {
    background-color: rgb(224 224 224 / 22%);
    border-color: rgb(214 214 214);
}

/* Utility Classes to use these variables */
.bg-theme-main {
    background-color: var(--bg-main);
}

.bg-theme-card {
    background-color: var(--bg-card);
}

.bg-theme-card-inner {
    background-color: var(--bg-card-inner);
}

.text-theme-main {
    color: var(--text-main);
}

.text-theme-body {
    color: var(--text-body);
}

.text-theme-muted {
    color: var(--text-muted);
}

.text-theme-accent {
    color: var(--color-accent);
}

.border-theme {
    border-color: var(--border-color);
}

/* Overrides for specific hardcoded elements if needed */
body {
    background-color: var(--bg-main);
    color: var(--text-main);
    transition: background-color 0.5s ease, color 0.5s ease;
}

/* Update selection color based on theme */
::selection {
    background-color: var(--color-accent);
    color: var(--bg-main);
}