// ----------------
// Config Sass et variables
// ----------------

// ----------------
// Valeurs de Breakpoints
// ----------------

// Hypothèse : smartphone portrait/paysage < 576px < gros smartphone paysage + tablette portrait < 992px < tablette paysage < 1330px < laptop et plus
$breakpoints: (
  sm: 576px,
  md: 992px,
  lg: 1330px,
) !default;

$small: map-get($breakpoints, sm) !default;
$medium: map-get($breakpoints, md) !default;
$large: map-get($breakpoints, lg) !default;

// ----------------
// Spacers
// ----------------

$spacers: (
  "0": 0,
  // none
  "2": 0.125rem,
  // tiny
  "5": 0.313rem,
  // tiny-plus
  "8": 0.5rem,
  // small
  "10": 0.625rem,
  // small-plus
  "16": 1rem,
  // medium
  "20": 1.25rem,
  // medium-plus
  "24": 1.5rem,
  // large
  "36": 2.25rem,
  // large-plus
  "auto": auto,
) !default;

$spacer-none: map-get($spacers, "0") !default;
$spacer-tiny: map-get($spacers, "2") !default;
$spacer-tiny-plus: map-get($spacers, "5") !default;
$spacer-small: map-get($spacers, "8") !default;
$spacer-small-plus: map-get($spacers, "10") !default;
$spacer-medium: map-get($spacers, "16") !default;
$spacer-medium-plus: map-get($spacers, "20") !default;
$spacer-large: map-get($spacers, "24") !default;
$spacer-large-plus: map-get($spacers, "36") !default;

// ----------------
// Grid layout
// ----------------

$grid-columns: 6 !default;

$gaps: (
  "0": 0,
  "5": 0.313rem,
  "10": 0.625rem,
  "16": 1rem,
  "20": 1.25rem,
  "36": 2.25rem,
) !default;

// ----------------
// Fonts
// ----------------

// Font families
$font-family-base: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
  Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
$font-family-headings: sans-serif;
$font-family-monospace: consolas, courier, monospace;
$line-height-base: 1.5;

// Font sizes
$font-size: (
  "10": 0.625rem,
  "11": 0.6875rem,
  "12": 0.75rem,
  "14": 0.875rem,
  "16": 1rem,
  "18": 1.125rem,
  "20": 1.25rem,
  "24": 1.5rem,
  "30": 1.875rem,
  "36": 2.25rem,
  "base": 1rem,
  "inherit": "inherit",
);

$font-size-html: 100%;
$font-size-base: 1rem;

// Font weights
$weight-light: 200;
$weight-book: 300;
$weight-regular: 400;
$weight-medium: 500;
$weight-bold: 700;

// ----------------
// Couleurs
// ----------------

// Palette de couleur (à ne pas utiliser en variables sauf $white and $black)
$white: #ffffff;
$black: #000000;

$color-gray-1: #f7fafc;
$color-gray-2: #abc3c2;
$color-gray-3: #454d5d;
$color-gray-4: #212529;

$color-blue-1: #0275d8;
$color-blue-2: #04527b;
$color-blue-3: #033651;

// Palette non agnostic (à utiliser en variables)

$color-alpha: $color-gray-1; // couleurs fréquentes
$color-beta: $color-gray-3;
$color-gamma: $color-gray-4;

$color-delta: $color-blue-1;
$color-epsilon: $color-blue-2;

$color-gradient-alpha: linear-gradient(
  to left bottom,
  $color-alpha,
  $color-beta
);

$color-alternate-1: #5cb85c; // couleurs moins fréquentes
$color-alternate-1b: #4d9c4d;
$color-alternate-2: #5bc0de;
$color-alternate-2b: #4fa8c4;
$color-alternate-3: #f0ad4e;
$color-alternate-3b: #d19644;
$color-alternate-4: #d9534f;
$color-alternate-4b: #be4945;

// Links
$link-decoration: underline;
$link-decoration-hover: underline;

// Border radius
$radius-none: 0;
$radius-small: 0.5rem;
$radius-medium: 1rem;
$radius-large: 2rem;
$radius-circle: 50%;

// ----------------
// Liste des propriétés utilitaires (note display: grid se trouve dans Grillade)
// ----------------
$utils: (
  (hidden, display, none),
  (block, display, block),
  (inline, display, inline),
  (inline-block, display, inline-block),
  (flex, display, flex),
  (flex-row, flex-direction, row),
  (flex-col, flex-direction, column),
  (flex-wrap, flex-wrap, wrap),
  (flex-no-wrap, flex-wrap, nowrap),
  (flex-shrink, flex-shrink, 1),
  (flex-no-shrink, flex-shrink, 0),
  (flex-grow, flex-grow, 1),
  (flex-no-grow, flex-grow, 0),
  (float-left, float, left),
  (float-right, float, right),
  (float-none, float, none),
  (text-bold, font-weight, bold),
  (text-italic, font-style, italic),
  (text-uppercase, text-transform, uppercase),
  (text-lowercase, text-transform, lowercase),
  (text-smaller, font-size, smaller),
  (text-bigger, font-size, bigger),
  (text-left, text-align, left),
  (text-center, text-align, center),
  (text-right, text-align, right),
  (text-justify, text-align, justify),
  (text-wrap, overflow-wrap, break-word),
  (justify-start, justify-content, flex-start),
  (justify-end, justify-content, flex-end),
  (justify-center, justify-content, center),
  (justify-between, justify-content, space-between),
  (justify-around, justify-content, space-around),
  (justify-evenly, justify-content, space-evenly),
  (justify-items-start, justify-items, start),
  (justify-items-end, justify-items, end),
  (justify-items-center, justify-items, center),
  (align-start, align-content, start),
  (align-end, align-content, end),
  (align-center, align-content, center),
  (align-between, align-content, space-between),
  (align-around, align-content, space-around),
  (align-evenly, align-content, space-evenly),
  (align-items-start, align-items, flex-start),
  (align-items-end, align-items, flex-end),
  (align-items-center, align-items, center),
  (place-center, place-content, center),
  (justify-self-auto, justify-self, auto),
  (justify-self-start, justify-self, start),
  (justify-self-end, justify-self, end),
  (justify-self-center, justify-self, center),
  (justify-self-stretch, justify-self, stretch),
  (align-self-auto, align-self, auto),
  (align-self-start, align-self, flex-start),
  (align-self-end, align-self, flex-end),
  (align-self-center, align-self, center),
  (align-self-stretch, align-self, stretch),
  (align-top, vertical-align, top),
  (align-bottom, vertical-align, bottom),
  (align-middle, vertical-align, middle),
  (item-first, order, -100),
  (item-last, order, 100)
) !default;
