/*
Theme Name: OEM Beauty Luxury
Theme URI: https://oembeautytech.com/
Author: OEM Aesthetic Technology
Author URI: https://oembeautytech.com/
Description: Ultra-luxury, high-performance B2B WordPress theme for commercial medical aesthetic devices, roll shapers, and body sculpting equipment. Engineered for 90+ PageSpeed with zero bloat.
Version: 1.3.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: oem-beauty
Tags: full-site-editing, custom-colors, custom-menu, featured-images, theme-options, translation-ready
*/

/* ==========================================================================
   1. Design Tokens & Color Schemes (Light & Dark Mode)
   ========================================================================== */

/* Light Mode (Default Theme State) - Swiss / Apple Clinical Luxury */
:root {
  --clr-bg: #f8fafc;
  --clr-bg-main: #f8fafc;
  --clr-surface: #ffffff;
  --clr-bg-surface: #ffffff;
  --clr-surface-alt: #f0f4f9;
  --clr-bg-subtle: #f0f4f9;
  --clr-surface-card: #ffffff;
  --clr-bg-card: #ffffff;
  --clr-bg-card-hover: #ffffff;
  
  --clr-text-title: #0a1128;
  --clr-text-body: #475569;
  --clr-text-muted: #64748b;
  --clr-text-dim: #94a3b8;
  
  --clr-primary: #0066cc;
  --clr-primary-hover: #0052a3;
  --clr-primary-glow: rgba(0, 102, 204, 0.25);
  --clr-primary-rgb: 0, 102, 204;
  
  --clr-cyan: #0099cc;
  --clr-accent: #00b894;
  --clr-secondary: #00b894;
  --clr-secondary-hover: #00a082;
  --clr-secondary-glow: rgba(0, 184, 148, 0.25);
  
  --clr-border: rgba(14, 30, 60, 0.08);
  --clr-border-glow: rgba(0, 102, 204, 0.25);
  
  --clr-card-bg: #ffffff;
  --clr-topbar-bg: #f1f5f9;
  --clr-nav-bg: rgba(255, 255, 255, 0.95);
  --clr-footer-bg: #ffffff;
  --clr-footer-text: #475569;
  
  --font-heading: 'Michroma', sans-serif;
  --font-body: 'Outfit', sans-serif;
  --font-mono: 'Ubuntu', sans-serif;
  
  --radius-sm: 8px;
  --radius-md: 14px;
  --radius-lg: 22px;
  --radius-pill: 9999px;
  
  --container-max: 1440px;
  --shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.04);
  --shadow-subtle: 0 4px 20px rgba(0, 30, 80, 0.04), 0 1px 3px rgba(0, 0, 0, 0.02);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.06);
  --shadow-hover: 0 20px 45px rgba(0, 60, 140, 0.1), 0 2px 10px rgba(0, 0, 0, 0.03);
  --shadow-lg: 0 20px 50px rgba(0, 0, 0, 0.1);
  --shadow-mega: 0 30px 80px rgba(10, 30, 70, 0.14);
  --shadow-glow: 0 0 25px var(--clr-primary-glow);
  
  --transition-fast: 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-normal: 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  --transition-slow: 0.6s cubic-bezier(0.16, 1, 0.3, 1);
}

/* Dark Mode (Live Toggle Activation State) */
[data-theme="dark"] {
  --clr-bg: #070b14;
  --clr-bg-main: #070b14;
  --clr-surface: #0d1527;
  --clr-bg-surface: #0d1527;
  --clr-surface-alt: #121c33;
  --clr-bg-subtle: #121c33;
  --clr-surface-card: rgba(18, 27, 48, 0.7);
  --clr-bg-card: #0d1527;
  --clr-bg-card-hover: #121c33;
  
  --clr-text-title: #ffffff;
  --clr-text-body: #94a3b8;
  --clr-text-muted: #64748b;
  
  --clr-primary: #00a8ff;
  --clr-primary-hover: #33baff;
  --clr-primary-glow: rgba(0, 168, 255, 0.3);
  --clr-primary-rgb: 0, 168, 255;
  
  --clr-secondary: #00e676;
  --clr-secondary-hover: #00c853;
  --clr-secondary-glow: rgba(0, 230, 118, 0.3);
  
  --clr-border: rgba(255, 255, 255, 0.08);
  --clr-border-glow: rgba(0, 168, 255, 0.4);
  
  --clr-card-bg: rgba(18, 27, 48, 0.7);
  --clr-topbar-bg: #05080f;
  --clr-nav-bg: rgba(7, 11, 20, 0.95);
  --clr-footer-bg: #05080f;
  --clr-footer-text: #94a3b8;
  
  --shadow-sm: 0 2px 10px rgba(0, 0, 0, 0.4);
  --shadow-subtle: 0 4px 20px rgba(0, 0, 0, 0.4);
  --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.6);
  --shadow-hover: 0 20px 45px rgba(0, 0, 0, 0.7);
  --shadow-lg: 0 20px 50px rgba(0, 0, 0, 0.8);
  --shadow-mega: 0 30px 80px rgba(0, 0, 0, 0.85);
}

/* ==========================================================================
   2. Mobile-First Resets & Base Normalization
   ========================================================================== */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 16px;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  overflow-x: clip;
  max-width: 100%;
}

body {
  font-family: var(--font-body);
  background-color: var(--clr-bg);
  color: var(--clr-text-body);
  line-height: 1.6;
  overflow-x: clip;
  max-width: 100%;
  min-width: 320px;
  transition: background-color var(--transition-normal), color var(--transition-normal);
}

.site-wrapper,
.site-main {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}

h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
  word-wrap: break-word;
}

img, picture, svg, video {
  max-width: 100%;
  height: auto;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
  transition: color var(--transition-fast);
}

button, input, select, textarea {
  font: inherit;
  color: inherit;
  max-width: 100%;
}