/**
 * DigitalWC - Dark Mode
 * Dark theme styles
 */

.dwc-dark-mode {
    /* Background Colors */
    --dwc-bg-body: #0F0F1A;
    --dwc-bg-surface: #1A1A2E;
    --dwc-bg-surface-2: #252542;
    --dwc-bg-surface-3: #2F2F4A;
    --dwc-bg-overlay: rgba(0, 0, 0, 0.7);
    --dwc-bg-header: rgba(26, 26, 46, 0.95);

    /* Text Colors */
    --dwc-text-primary: #F8F9FC;
    --dwc-text-secondary: #A1A1B5;
    --dwc-text-tertiary: #6B6B80;
    --dwc-text-inverse: #1A1A2E;

    /* Border Colors */
    --dwc-border-color: #2F2F4A;
    --dwc-border-color-hover: #404060;
    --dwc-border-color-focus: var(--dwc-color-primary);

    /* Primary Color adjustments */
    --dwc-color-primary: #8B5CF6;
    --dwc-color-primary-hover: #A78BFA;
    --dwc-color-primary-light: rgba(139, 92, 246, 0.15);

    /* Shadows for dark mode */
    --dwc-shadow-xs: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
    --dwc-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.3), 0 1px 2px -1px rgba(0, 0, 0, 0.3);
    --dwc-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.4), 0 2px 4px -2px rgba(0, 0, 0, 0.3);
    --dwc-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.4), 0 4px 6px -4px rgba(0, 0, 0, 0.3);
    --dwc-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.4), 0 8px 10px -6px rgba(0, 0, 0, 0.3);
    --dwc-shadow-card: 0 2px 8px rgba(0, 0, 0, 0.3);
    --dwc-shadow-card-hover: 0 12px 24px rgba(0, 0, 0, 0.4);

    /* Badge colors */
    --dwc-color-primary-light: rgba(139, 92, 246, 0.2);
    --dwc-color-secondary-light: rgba(16, 185, 129, 0.2);
    --dwc-color-accent-light: rgba(245, 158, 11, 0.2);
    --dwc-color-danger-light: rgba(239, 68, 68, 0.2);
}

/* Dark mode specific styles */
.dwc-dark-mode {
    color-scheme: dark;
}

/* Images in dark mode */
.dwc-dark-mode img {
    opacity: 0.95;
}

/* Scrollbar dark mode */
.dwc-dark-mode::-webkit-scrollbar-track {
    background: var(--dwc-bg-surface);
}

.dwc-dark-mode::-webkit-scrollbar-thumb {
    background: var(--dwc-border-color);
}

.dwc-dark-mode::-webkit-scrollbar-thumb:hover {
    background: var(--dwc-border-color-hover);
}

/* Selection dark mode */
.dwc-dark-mode ::selection {
    background-color: var(--dwc-color-primary);
    color: #FFFFFF;
}

/* Inputs in dark mode */
.dwc-dark-mode .dwc-input,
.dwc-dark-mode .dwc-select,
.dwc-dark-mode .dwc-textarea {
    background: var(--dwc-bg-surface-2);
    border-color: var(--dwc-border-color);
    color: var(--dwc-text-primary);
}

.dwc-dark-mode .dwc-input::placeholder,
.dwc-dark-mode .dwc-textarea::placeholder {
    color: var(--dwc-text-tertiary);
}

/* Alerts in dark mode */
.dwc-dark-mode .dwc-alert--info {
    background: rgba(59, 130, 246, 0.15);
    color: #60A5FA;
}

.dwc-dark-mode .dwc-alert--success {
    background: rgba(16, 185, 129, 0.15);
    color: #34D399;
}

.dwc-dark-mode .dwc-alert--warning {
    background: rgba(245, 158, 11, 0.15);
    color: #FBBF24;
}

.dwc-dark-mode .dwc-alert--danger {
    background: rgba(239, 68, 68, 0.15);
    color: #F87171;
}

/* Card footer in dark mode */
.dwc-dark-mode .dwc-card__footer {
    background: var(--dwc-bg-surface-2);
}

/* Toggle in dark mode */
.dwc-dark-mode .dwc-toggle__slider {
    background: var(--dwc-bg-surface-3);
}

.dwc-dark-mode .dwc-toggle__slider::before {
    background: var(--dwc-text-primary);
}

/* Skeleton in dark mode */
.dwc-dark-mode .dwc-skeleton {
    background: linear-gradient(90deg, var(--dwc-bg-surface-2) 25%, var(--dwc-bg-surface-3) 50%, var(--dwc-bg-surface-2) 75%);
    background-size: 200% 100%;
}

/* Spinner in dark mode */
.dwc-dark-mode .dwc-spinner {
    border-color: var(--dwc-border-color);
    border-top-color: var(--dwc-color-primary);
}

/* Dropdown in dark mode */
.dwc-dark-mode .dwc-dropdown__menu {
    background: var(--dwc-bg-surface);
    border-color: var(--dwc-border-color);
}

.dwc-dark-mode .dwc-dropdown__item:hover {
    background: var(--dwc-bg-surface-2);
}

/* Tabs in dark mode */
.dwc-dark-mode .dwc-tabs__nav {
    border-color: var(--dwc-border-color);
}

.dwc-dark-mode .dwc-tabs__tab {
    color: var(--dwc-text-secondary);
}

.dwc-dark-mode .dwc-tabs__tab:hover {
    color: var(--dwc-text-primary);
}

.dwc-dark-mode .dwc-tabs__tab--active {
    color: var(--dwc-color-primary);
}

/* Tooltip in dark mode */
.dwc-dark-mode .dwc-tooltip::after {
    background: var(--dwc-bg-surface-3);
    color: var(--dwc-text-primary);
}

/* Badge neutral in dark mode */
.dwc-dark-mode .dwc-badge--neutral {
    background: var(--dwc-bg-surface-3);
    color: var(--dwc-text-secondary);
}

.dwc-dark-mode .dwc-badge--dark {
    background: var(--dwc-text-primary);
    color: var(--dwc-bg-surface);
}

/* Price in dark mode */
.dwc-dark-mode .dwc-price__current {
    color: var(--dwc-text-primary);
}

/* Secondary button in dark mode */
.dwc-dark-mode .dwc-btn--secondary {
    background: var(--dwc-bg-surface-2);
    border-color: var(--dwc-border-color);
    color: var(--dwc-text-primary);
}

.dwc-dark-mode .dwc-btn--secondary:hover:not(:disabled) {
    background: var(--dwc-bg-surface-3);
    border-color: var(--dwc-border-color-hover);
}

/* Ghost button in dark mode */
.dwc-dark-mode .dwc-btn--ghost:hover:not(:disabled) {
    background: var(--dwc-bg-surface-2);
}

/* Rating stars empty in dark mode */
.dwc-dark-mode .dwc-rating__star--empty {
    color: var(--dwc-border-color);
}

/* Avatar border in dark mode */
.dwc-dark-mode .dwc-avatar--bordered {
    border-color: var(--dwc-bg-surface);
}

/* Widget in dark mode */
.dwc-dark-mode .dwc-widget {
    background: var(--dwc-bg-surface);
    border-color: var(--dwc-border-color);
}

/* Post card in dark mode */
.dwc-dark-mode .dwc-post-card {
    background: var(--dwc-bg-surface);
}

.dwc-dark-mode .dwc-post-card__title a {
    color: var(--dwc-text-primary);
}

/* Pagination in dark mode */
.dwc-dark-mode .dwc-pagination .page-numbers {
    background: var(--dwc-bg-surface);
    border-color: var(--dwc-border-color);
    color: var(--dwc-text-secondary);
}

.dwc-dark-mode .dwc-pagination .page-numbers:hover {
    border-color: var(--dwc-color-primary);
    color: var(--dwc-color-primary);
}

/* Gradient overlays for dark mode */
.dwc-dark-mode .dwc-hero__overlay {
    background: linear-gradient(135deg, rgba(15, 15, 26, 0.9), rgba(15, 15, 26, 0.7));
}

/* Code/Pre elements */
.dwc-dark-mode pre,
.dwc-dark-mode code {
    background: var(--dwc-bg-surface-2);
    color: var(--dwc-text-primary);
}

/* Table in dark mode */
.dwc-dark-mode table {
    border-color: var(--dwc-border-color);
}

.dwc-dark-mode th {
    background: var(--dwc-bg-surface-2);
}

.dwc-dark-mode tr:nth-child(even) {
    background: var(--dwc-bg-surface-2);
}

.dwc-dark-mode td,
.dwc-dark-mode th {
    border-color: var(--dwc-border-color);
}

/* HR in dark mode */
.dwc-dark-mode hr,
.dwc-dark-mode .dwc-divider {
    background: var(--dwc-border-color);
}

/* Blockquote in dark mode */
.dwc-dark-mode blockquote {
    border-left-color: var(--dwc-color-primary);
    background: var(--dwc-bg-surface-2);
}

/* Dark mode toggle button styles */
.dwc-dark-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    background: var(--dwc-bg-surface-2);
    border: 1px solid var(--dwc-border-color);
    border-radius: var(--dwc-radius-lg);
    cursor: pointer;
    transition: all var(--dwc-transition-fast);
}

.dwc-dark-toggle:hover {
    background: var(--dwc-bg-surface-3);
    border-color: var(--dwc-border-color-hover);
}

.dwc-dark-toggle__icon--sun,
.dwc-dark-toggle__icon--moon {
    color: var(--dwc-text-secondary);
    transition: color var(--dwc-transition-fast);
}

/* Show moon in light mode, sun in dark mode */
.dwc-dark-toggle__icon--moon {
    display: block;
}

.dwc-dark-toggle__icon--sun {
    display: none;
}

.dwc-dark-mode .dwc-dark-toggle__icon--moon {
    display: none;
}

.dwc-dark-mode .dwc-dark-toggle__icon--sun {
    display: block;
    color: var(--dwc-color-accent);
}

/* Product Header Dark Mode */
.dwc-dark-mode .dwc-product-header {
    background: var(--dwc-bg-surface);
}

.dwc-dark-mode .dwc-product-header__title {
    color: var(--dwc-text-primary);
}

.dwc-dark-mode .dwc-product-header__meta {
    color: var(--dwc-text-secondary);
}

.dwc-dark-mode .dwc-product-header__author-details,
.dwc-dark-mode .dwc-product-header__sales-count,
.dwc-dark-mode .dwc-product-header__downloads-count,
.dwc-dark-mode .dwc-product-header__badge {
    border-right-color: var(--dwc-border-color);
}

.dwc-dark-mode .dwc-product-header__author-details {
    color: var(--dwc-text-secondary);
}

.dwc-dark-mode .dwc-product-header__author {
    color: var(--dwc-color-primary);
}

.dwc-dark-mode .dwc-product-header__sales-count svg,
.dwc-dark-mode .dwc-product-header__downloads-count svg {
    color: var(--dwc-text-secondary);
}

.dwc-dark-mode .dwc-product-header__sales-count strong,
.dwc-dark-mode .dwc-product-header__downloads-count strong,
.dwc-dark-mode .dwc-product-header__badge strong {
    color: var(--dwc-text-primary);
}

.dwc-dark-mode .dwc-product-header__badge svg {
    color: var(--dwc-color-secondary);
}

/* Smooth transition for dark mode */
body {
    transition: background-color 0.3s ease, color 0.3s ease;
}

.dwc-card,
.dwc-btn,
.dwc-input,
.dwc-dropdown__menu,
.dwc-post-card {
    transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease, transform var(--dwc-transition-base), box-shadow var(--dwc-transition-base);
}
