:root {
    --color-brand-primary: #b5270b;
    --color-brand-secondary: #b5710b;
    --color-brand-success: #44ab03;

    --color-page-bg: #070d18;
    --color-page-bg-alt: #0c1423;
    --color-surface: #111a2a;
    --color-surface-secondary: #152034;
    --color-card-bg: #131d30;
    --color-card-elevated: #18243b;
    --color-overlay: rgba(4, 10, 19, 0.82);

    --color-text-primary: #f4f7fb;
    --color-text-secondary: #d3dcea;
    --color-text-muted: #9aa8bc;
    --color-text-soft: #7d8a9d;
    --color-text-disabled: #627187;
    --color-text-on-brand: #fff4f1;
    --color-link: #d7b370;
    --color-link-hover: #f2cd89;

    --color-border-subtle: rgba(148, 163, 184, 0.12);
    --color-border-default: rgba(148, 163, 184, 0.18);
    --color-border-strong: rgba(148, 163, 184, 0.28);
    --color-border-card: rgba(148, 163, 184, 0.16);

    --color-primary: var(--color-brand-primary);
    --color-primary-hover: #cb3517;
    --color-primary-active: #911c06;
    --color-primary-soft: rgba(181, 39, 11, 0.14);
    --color-primary-border: rgba(181, 39, 11, 0.42);
    --color-primary-glow: rgba(181, 39, 11, 0.26);

    --color-accent: var(--color-brand-secondary);
    --color-accent-hover: #c9871e;
    --color-accent-active: #8e5807;
    --color-accent-soft: rgba(181, 113, 11, 0.16);
    --color-accent-border: rgba(181, 113, 11, 0.42);
    --color-accent-glow: rgba(181, 113, 11, 0.24);

    --color-success: var(--color-brand-success);
    --color-success-hover: #58bc16;
    --color-success-active: #2f7f02;
    --color-success-soft: rgba(68, 171, 3, 0.18);
    --color-success-border: rgba(68, 171, 3, 0.42);
    --color-success-glow: rgba(68, 171, 3, 0.2);

    --color-info: #4096ff;
    --color-info-soft: rgba(64, 150, 255, 0.16);
    --color-info-border: rgba(64, 150, 255, 0.34);
    --color-info-text: #d7e9ff;

    --color-warning: #d6a33f;
    --color-warning-soft: rgba(214, 163, 63, 0.16);
    --color-warning-border: rgba(214, 163, 63, 0.34);
    --color-warning-text: #ffebbf;

    --color-danger: #d14f42;
    --color-danger-soft: rgba(209, 79, 66, 0.16);
    --color-danger-border: rgba(209, 79, 66, 0.34);
    --color-danger-text: #ffd6d2;

    --input-bg: rgba(10, 18, 31, 0.82);
    --input-bg-hover: rgba(16, 26, 43, 0.94);
    --input-border: var(--color-border-default);
    --input-border-hover: var(--color-border-strong);
    --input-border-focus: rgba(181, 113, 11, 0.62);
    --input-text: var(--color-text-primary);
    --input-placeholder: var(--color-text-soft);

    --font-family-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-family-display: var(--font-family-sans);
    --font-family-mono: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;
    --font-weight-extrabold: 800;
    --line-height-tight: 1.15;
    --line-height-snug: 1.3;
    --line-height-base: 1.55;
    --line-height-relaxed: 1.7;
    --letter-spacing-tight: -0.02em;
    --letter-spacing-base: -0.01em;
    --letter-spacing-wide: 0.08em;

    --font-size-2xs: 0.6875rem;
    --font-size-xs: 0.75rem;
    --font-size-sm: 0.875rem;
    --font-size-md: 1rem;
    --font-size-lg: 1.125rem;
    --font-size-xl: 1.25rem;
    --font-size-2xl: clamp(1.5rem, 1.15rem + 1vw, 2rem);
    --font-size-3xl: clamp(1.9rem, 1.45rem + 1.25vw, 2.6rem);

    --type-page-eyebrow: var(--font-size-xs);
    --type-page-title: var(--font-size-3xl);
    --type-page-subtitle: var(--font-size-md);
    --type-section-title: clamp(1.125rem, 1rem + 0.45vw, 1.5rem);
    --type-section-subtitle: var(--font-size-sm);
    --type-card-title: clamp(1.05rem, 0.98rem + 0.3vw, 1.2rem);
    --type-card-body: var(--font-size-sm);
    --type-card-meta: var(--font-size-xs);
    --type-label: var(--font-size-xs);
    --type-input: var(--font-size-sm);
    --type-button: var(--font-size-sm);
    --type-table-header: var(--font-size-xs);
    --type-table-cell: var(--font-size-sm);
    --type-table-meta: var(--font-size-xs);
    --type-badge: 0.6875rem;

    --space-0: 0;
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.25rem;
    --space-6: 1.5rem;
    --space-7: 1.75rem;
    --space-8: 2rem;
    --space-10: 2.5rem;
    --space-12: 3rem;
    --space-14: 3.5rem;
    --space-16: 4rem;
    --space-20: 5rem;

    --radius-xs: 0.4rem;
    --radius-sm: 0.6rem;
    --radius-md: 0.85rem;
    --radius-lg: 1.1rem;
    --radius-xl: 1.4rem;
    --radius-2xl: 1.8rem;
    --radius-pill: 999px;

    --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.16);
    --shadow-sm: 0 12px 28px rgba(0, 0, 0, 0.18);
    --shadow-md: 0 20px 42px rgba(0, 0, 0, 0.24);
    --shadow-lg: 0 28px 58px rgba(0, 0, 0, 0.32);
    --shadow-accent-glow: 0 0 0 1px var(--color-accent-border), 0 14px 30px rgba(181, 113, 11, 0.16);

    --motion-fast: 140ms;
    --motion-base: 220ms;
    --motion-slow: 320ms;

    --focus-ring: 0 0 0 3px rgba(181, 113, 11, 0.28);
    --selection-bg: rgba(181, 113, 11, 0.34);
    --selection-text: #fff9ed;

    --container-xs: 420px;
    --container-sm: 640px;
    --container-md: 880px;
    --container-lg: 1120px;
    --container-xl: 1280px;
    --content-max-width: 1360px;
    --header-height: 4.5rem;
    --header-height-compact: 3.85rem;

    --panel-bg: linear-gradient(180deg, rgba(23, 33, 52, 0.92), rgba(14, 22, 37, 0.96));
    --panel-border: var(--color-border-card);
    --panel-shadow: var(--shadow-sm);
    --card-padding-sm: var(--space-4);
    --card-padding-md: var(--space-5);
    --card-padding-lg: var(--space-6);
    --button-height-sm: 2.375rem;
    --button-height-md: 2.75rem;
    --button-height-lg: 3.25rem;
    --button-primary-bg: linear-gradient(180deg, var(--color-primary-hover), var(--color-primary));
    --button-primary-border: var(--color-primary-border);
    --button-secondary-bg: rgba(20, 29, 46, 0.82);
    --button-secondary-border: var(--color-border-default);
    --button-success-bg: linear-gradient(180deg, var(--color-success-hover), var(--color-success));
    --button-success-border: var(--color-success-border);
    --badge-success-bg: var(--color-success-soft);
    --badge-success-border: var(--color-success-border);
    --badge-neutral-bg: rgba(148, 163, 184, 0.12);
    --badge-neutral-border: rgba(148, 163, 184, 0.22);
    --badge-info-bg: var(--color-info-soft);
    --badge-info-border: var(--color-info-border);
    --badge-danger-bg: var(--color-danger-soft);
    --badge-danger-border: var(--color-danger-border);
    --table-header-bg: rgba(255, 255, 255, 0.03);
    --table-row-border: rgba(148, 163, 184, 0.12);
    --alert-success-bg: rgba(68, 171, 3, 0.15);
    --alert-success-border: rgba(68, 171, 3, 0.3);
    --alert-danger-bg: rgba(209, 79, 66, 0.14);
    --alert-danger-border: rgba(209, 79, 66, 0.3);
    --alert-warning-bg: rgba(214, 163, 63, 0.14);
    --alert-warning-border: rgba(214, 163, 63, 0.3);
    --alert-info-bg: rgba(64, 150, 255, 0.14);
    --alert-info-border: rgba(64, 150, 255, 0.3);

    --ce-dark: var(--color-page-bg);
    --ce-text: var(--color-text-primary);
    --ce-accent: var(--color-brand-success);
    --ce-gold: var(--color-brand-secondary);
    --ce-red: var(--color-brand-primary);
    --ce-green: var(--color-brand-success);
    --ce-bg: var(--color-page-bg);
    --ce-body-bg: var(--color-page-bg);
    --ce-surface: var(--color-card-bg);
    --ce-border: var(--color-border-default);
    --ce-muted: var(--color-text-muted);
    --ce-navbar-bg: rgba(10, 16, 28, 0.88);
    --ce-shadow-soft: var(--shadow-sm);
    --ce-shadow-strong: var(--shadow-md);
    --ce-input-bg: var(--input-bg);
    --ce-warning-surface: var(--color-warning-soft);
    --ce-warning-text: var(--color-warning-text);
    --ce-info-surface: var(--color-info-soft);
    --ce-info-text: var(--color-info-text);
    --ce-danger-surface: var(--color-danger-soft);
    --ce-danger-text: var(--color-danger-text);
    --ce-success-surface: var(--color-success-soft);
    --ce-success-text: #ddffca;
}

::selection {
    background: var(--selection-bg);
    color: var(--selection-text);
}
