@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap");

:root,
[data-bs-theme=light] {
  --bs-blue: #2196f3;
  --bs-indigo: #6610f2;
  --bs-purple: #6f42c1;
  --bs-pink: #e83e8c;
  --bs-red: #e51c23;
  --bs-orange: #fd7e14;
  --bs-yellow: #ff9800;
  --bs-green: #4caf50;
  --bs-teal: #20c997;
  --bs-cyan: #9c27b0;
  --bs-black: #000;
  --bs-white: #fff;
  --bs-gray: #666;
  --bs-gray-dark: #222;
  --bs-gray-100: #f8f9fa;
  --bs-gray-200: #eee;
  --bs-gray-300: #dee2e6;
  --bs-gray-400: #ced4da;
  --bs-gray-500: #bbb;
  --bs-gray-600: #666;
  --bs-gray-700: #444;
  --bs-gray-800: #222;
  --bs-gray-900: #212121;

  --bs-primary: #e17237;
  --bs-secondary: #37a5e1;
  --bs-success: #4caf50;
  --bs-info: #9c27b0;
  --bs-warning: #ff9800;
  --bs-danger: #e51c23;
  --bs-light: #f8f9fa;
  --bs-dark: #222;

  --bs-primary-rgb: 225, 114, 55;
  --bs-secondary-rgb: 55, 165, 225;
  --bs-success-rgb: 76, 175, 80;
  --bs-info-rgb: 156, 39, 176;
  --bs-warning-rgb: 255, 152, 0;
  --bs-danger-rgb: 229, 28, 35;
  --bs-light-rgb: 248, 249, 250;
  --bs-dark-rgb: 34, 34, 34;


  --bs-primary-text-emphasis: #0d3c61;
  --bs-secondary-text-emphasis: #666666;
  --bs-success-text-emphasis: #1e4620;
  --bs-info-text-emphasis: #3e1046;
  --bs-warning-text-emphasis: #663d00;
  --bs-danger-text-emphasis: #5c0b0e;
  --bs-light-text-emphasis: #444;
  --bs-dark-text-emphasis: #444;

  --bs-primary-bg-subtle: rgb(245, 213, 194);
  --bs-secondary-bg-subtle: white;
  --bs-success-bg-subtle: #dbefdc;
  --bs-info-bg-subtle: #ebd4ef;
  --bs-warning-bg-subtle: #ffeacc;
  --bs-danger-bg-subtle: #fad2d3;
  --bs-light-bg-subtle: #fcfcfd;
  --bs-dark-bg-subtle: #ced4da;

  --bs-primary-border-subtle: #a6d5fa;
  --bs-secondary-border-subtle: white;
  --bs-success-border-subtle: #b7dfb9;
  --bs-info-border-subtle: #d7a9df;
  --bs-warning-border-subtle: #ffd699;
  --bs-danger-border-subtle: #f5a4a7;
  --bs-light-border-subtle: #eee;
  --bs-dark-border-subtle: #bbb;

  --bs-white-rgb: 255, 255, 255;
  --bs-black-rgb: 0, 0, 0;

  --bs-font-sans-serif: Roboto, -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;

  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));

  --bs-body-font-family: var(--bs-font-sans-serif);
  --bs-body-font-size: 1rem;
  --bs-body-font-weight: 400;
  --bs-body-line-height: 1.5;

  --bs-body-color: #444;
  --bs-body-color-rgb: 68, 68, 68;
  --bs-body-bg: #fff;
  --bs-body-bg-rgb: 255, 255, 255;

  --bs-emphasis-color: #000;
  --bs-emphasis-color-rgb: 0, 0, 0;

  --bs-secondary-color: rgba(68, 68, 68, 0.75);
  --bs-secondary-color-rgb: 68, 68, 68;

  --bs-secondary-bg: #eee;
  --bs-secondary-bg-rgb: 238, 238, 238;

  --bs-tertiary-color: rgba(68, 68, 68, 0.5);
  --bs-tertiary-color-rgb: 68, 68, 68;

  --bs-tertiary-bg: #f8f9fa;
  --bs-tertiary-bg-rgb: 248, 249, 250;

  --bs-heading-color: inherit;

  --bs-link-color: #2196f3;
  --bs-link-color-rgb: 33, 150, 243;
  --bs-link-decoration: underline;
  --bs-link-hover-color: #1a78c2;
  --bs-link-hover-color-rgb: 26, 120, 194;

  --bs-code-color: #e83e8c;

  --bs-highlight-color: #444;
  --bs-highlight-bg: #ffeacc;

  --bs-border-width: 2px;
  --bs-border-style: solid;
  --bs-border-color: #dee2e6;
  --bs-border-color-translucent: rgba(0, 0, 0, 0.175);

  --bs-border-radius: 0.375rem;
  --bs-border-radius-sm: 0.25rem;
  --bs-border-radius-lg: 0.5rem;
  --bs-border-radius-xl: 1rem;
  --bs-border-radius-xxl: 2rem;
  --bs-border-radius-2xl: var(--bs-border-radius-xxl);
  --bs-border-radius-pill: 50rem;

  --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
  --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);
  --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);

  --bs-focus-ring-width: 0.25rem;
  --bs-focus-ring-opacity: 0.25;
  --bs-focus-ring-color: rgba(33, 150, 243, 0.25);

  --bs-form-valid-color: #4caf50;
  --bs-form-valid-border-color: #4caf50;
  --bs-form-invalid-color: #e51c23;
  --bs-form-invalid-border-color: #e51c23;
}

[data-bs-theme=dark] {
  color-scheme: dark;

  --bs-body-color: #dee2e6;
  --bs-body-color-rgb: 222, 226, 230;

  --bs-body-bg: #212121;
  --bs-body-bg-rgb: 33, 33, 33;

  --bs-emphasis-color: #fff;
  --bs-emphasis-color-rgb: 255, 255, 255;

  --bs-secondary-color: rgba(222, 226, 230, 0.75);
  --bs-secondary-color-rgb: 222, 226, 230;

  --bs-secondary-bg: #222;
  --bs-secondary-bg-rgb: 34, 34, 34;

  --bs-tertiary-color: rgba(222, 226, 230, 0.5);
  --bs-tertiary-color-rgb: 222, 226, 230;

  --bs-tertiary-bg: #222222;
  --bs-tertiary-bg-rgb: 34, 34, 34;

  --bs-primary-text-emphasis: #7ac0f8;
  --bs-secondary-text-emphasis: white;
  --bs-success-text-emphasis: #94cf96;
  --bs-info-text-emphasis: #c47dd0;
  --bs-warning-text-emphasis: #ffc166;
  --bs-danger-text-emphasis: #ef777b;

  --bs-light-text-emphasis: #f8f9fa;
  --bs-dark-text-emphasis: #dee2e6;

  --bs-primary-bg-subtle: #071e31;
  --bs-secondary-bg-subtle: #333333;
  --bs-success-bg-subtle: #0f2310;
  --bs-info-bg-subtle: #1f0823;
  --bs-warning-bg-subtle: #331e00;
  --bs-danger-bg-subtle: #2e0607;

  --bs-light-bg-subtle: #222;
  --bs-dark-bg-subtle: #111111;

  --bs-primary-border-subtle: #145a92;
  --bs-secondary-border-subtle: #999999;
  --bs-success-border-subtle: #2e6930;
  --bs-info-border-subtle: #5e176a;
  --bs-warning-border-subtle: #995b00;
  --bs-danger-border-subtle: #891115;

  --bs-light-border-subtle: #444;
  --bs-dark-border-subtle: #222;

  --bs-heading-color: inherit;

  --bs-link-color: #7ac0f8;
  --bs-link-hover-color: #95cdf9;
  --bs-link-color-rgb: 122, 192, 248;
  --bs-link-hover-color-rgb: 149, 205, 249;

  --bs-code-color: #f18bba;

  --bs-highlight-color: #dee2e6;
  --bs-highlight-bg: #663d00;

  --bs-border-color: #444;
  --bs-border-color-translucent: rgba(255, 255, 255, 0.15);

  --bs-form-valid-color: #94cf96;
  --bs-form-valid-border-color: #94cf96;
  --bs-form-invalid-color: #ef777b;
  --bs-form-invalid-border-color: #ef777b;
}

/* =========================
   Extras (safe additions)
   ========================= */
:focus-visible {
  outline: 0;
}

::selection {
  background: var(--bs-highlight-bg);
  color: var(--bs-highlight-color);
}

a {
  text-underline-offset: 0.15em;
}
