/*!
 * sbomify Design Tokens
 * Core design system variables
 */

:root {
  /* ===== CORE BRAND COLORS ===== */
  --brand-primary: #3b7ddd;
  --brand-secondary: rgb(var(--color-text-muted));
  --brand-success: rgb(var(--color-success));
  --brand-danger: rgb(var(--color-danger));
  --brand-warning: rgb(var(--color-warning));
  --brand-info: #17a2b8;
  --brand-primary-rgb: 59, 125, 221;
  --brand-secondary-rgb: 108, 117, 125;
  --brand-success-rgb: 28, 187, 140;
  --brand-danger-rgb: 220, 53, 69;
  --brand-warning-rgb: 252, 185, 44;
  --brand-info-rgb: 23, 162, 184;
  --bootstrap-primary: rgb(var(--color-info));
  --bootstrap-primary-rgb: 13, 110, 253;
  --accent-blue-rgb: 25, 118, 210;
  --white-rgb: 255, 255, 255;
  --black-rgb: 0, 0, 0;

  /* ===== NEUTRAL COLORS ===== */
  --white: #ffffff;
  --gray-50: #f8f9fa;
  --gray-100: rgb(var(--color-gray-100));
  --gray-200: #e9ecef;
  --gray-300: #dee2e6;
  --gray-400: #ced4da;
  --gray-500: #adb5bd;
  --gray-600: rgb(var(--color-text-muted));
  --gray-700: #495057;
  --gray-800: #343a40;
  --gray-900: #212529;

  /* ===== SEMANTIC COLOR SYSTEM ===== */
  --text-primary: #495057;
  --text-secondary: rgb(var(--color-text-muted));
  --text-muted: #7c8b9d;
  --text-title: rgb(var(--color-text));
  --text-link: #3b7ddd;
  --text-link-hover: #2f64b1;
  --text-inverse: #ffffff;

  --bg-primary: #f9fbfd;
  --bg-secondary: #ffffff;
  --bg-tertiary: #f8f9fa;
  --bg-glass: rgb(255 255 255 / 0.8);

  /* Surface Colors (for Layout) */
  --surface-card: #ffffff;
  --surface-card-muted: #f8f9fa;
  --surface-border: rgb(var(--color-border));

  --border-color: rgb(var(--color-border));
  --border-color-light: #f0f0f0;
  --border-color-dark: #d1d9e2;

  /* ===== COMPONENT COLORS ===== */
  --nav-background: #e8e8e8;
  --sidebar-background: var(--bg-glass);
  --active-background: #7c8b9d;
  --form-control-border: #d1d9e2;

  /* ===== TYPOGRAPHY ===== */
  --font-family-primary: "Inter", "Helvetica Neue", Arial, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", sans-serif;
  --font-family-brand: "Agrandir", var(--font-family-primary);
  --font-family-mono: SFMono-Regular, Monaco, Menlo, Consolas, "Liberation Mono", "Courier New", monospace;

  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 0.875rem;
  --font-size-lg: 1rem;
  --font-size-xl: 1.25rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 1.875rem;

  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  --line-height-normal: 1.5;
  --line-height-tight: 1.25;
  /* Intentionally set to 1.75 for improved readability and spacing */
  --line-height-relaxed: 1.75;

  /* ===== SPACING ===== */
  --spacing-xs: 0.25rem;
  --spacing-sm: 0.5rem;
  --spacing-md: 1rem;
  --spacing-lg: 1.5rem;
  --spacing-xl: 2rem;
  --spacing-2xl: 3rem;

  /* ===== BORDER RADIUS ===== */
  --radius-sm: 0.2rem;
  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;
  --radius-xl: 1rem;
  --radius-full: 9999px;

  /* ===== SHADOWS ===== */
  --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
  --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -1px rgb(0 0 0 / 0.06);
  --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -2px rgb(0 0 0 / 0.05);
  --shadow-card: 0 0 0.875rem 0 rgba(33, 37, 41, 0.05);

  /* ===== Z-INDEX ===== */
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal-backdrop: 1040;
  --z-modal: 1050;
  --z-popover: 1060;
  --z-tooltip: 1070;

  /* ===== TRANSITIONS ===== */
  --transition-base: all 0.2s ease-in-out;
  --transition-normal: 0.2s ease-in-out;
  --transition-fast: all 0.1s ease-in-out;
  --transition-smooth: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);

  /* ===== BRIDGE TO TAILWIND VARIABLES ===== */
  /* These reference the authoritative Tailwind color system */
  /* and provide backwards compatibility during Bootstrap phase-out */

  /* Override brand colors to use Tailwind */
  --brand-primary: rgb(var(--color-primary));
  --brand-success: rgb(var(--color-success));
  --brand-danger: rgb(var(--color-danger));
  --brand-warning: rgb(var(--color-warning));
  --brand-info: rgb(var(--color-info));

  /* Bridge semantic colors */
  --text-primary: rgb(var(--color-text));
  --text-secondary: rgb(var(--color-text-secondary));
  --text-muted: rgb(var(--color-text-muted));
  --bg-primary: rgb(var(--color-background));
  --bg-secondary: rgb(var(--color-surface));
  --surface-card: rgb(var(--color-surface));
  --surface-border: rgb(var(--color-border));
  --border-color: rgb(var(--color-border));
}

/* Alpine.js Utility - Prevent flicker on load */
[x-cloak] {
  display: none !important;
}