/*
 * Faustin design system — design tokens.
 * Every value below is fixed. Do not tweak by eye;
 * if a value needs to change, change it here.
 */

/* ---------- Fonts ---------- */
/* Fonts: Be Vietnam Pro (text) and Mona Sans at 75% width (headings). Both SIL OFL 1.1, licences in the fonts folder. */
@font-face { font-family: 'G6 Sans'; src: url('../fonts/BeVietnamPro-Regular.ttf') format('truetype'); font-weight: 400; font-style: normal; font-display: block; }
@font-face { font-family: 'G6 Sans'; src: url('../fonts/BeVietnamPro-Medium.ttf') format('truetype'); font-weight: 500 700; font-style: normal; font-display: block; }
@font-face { font-family: 'G6 Condensed'; src: url('../fonts/MonaSans-VF.ttf') format('truetype'); font-weight: 700; font-stretch: 75%; font-style: normal; font-display: block; }

:root {
  /* ---------- Surfaces ---------- */
  --g6-panel: #2a2735;                       /* Location Indicator, GPS BG, Race banners (132:138, 213:1775) */
  --g6-panel-deep: #241f2c;                  /* Minimap tint (127:92), checker tiles */
  --g6-panel-bar: #28252e;                   /* Stats panel top/bottom bar (213:1595) */
  --g6-panel-vehicle: rgba(36, 32, 38, 0.8); /* Vehicle info tile (132:147), blur 6 */
  --g6-glass: rgba(255, 255, 255, 0.15);     /* Weapon wheel / medicine container (156:315) */
  --g6-glass-border: rgba(0, 0, 0, 0.2);
  --g6-glass-selected: rgba(255, 255, 255, 0.4); /* Selected container, 3px white border, blur 15 */
  --g6-glass-soft: rgba(255, 255, 255, 0.12);    /* Stats list (213:1599), blur 22.5 */
  --g6-popup: rgba(46, 44, 49, 0.75);            /* Phone popup (225:1492), blur 22.5, radius 24 */
  --g6-strip: #38373c;                           /* Ammo / rounds counter strip (156:318) */
  --g6-tile-strip: rgba(255, 255, 255, 0.1);     /* Vehicle meter strip (132:150), opacity .85 */
  --g6-water: #2671ae;                           /* Location Indicator, Water Area (132:140) */
  --g6-danger: #c45256;                          /* Checkpoint missed (225:1512) */
  --g6-tooltip-from: #151327;                    /* Tooltip gradient (132:128) */
  --g6-tooltip-to: #58586b;
  --g6-tooltip-bg: rgba(255, 255, 255, 0.04);
  --g6-tooltip-border: rgba(255, 255, 255, 0.08);

  /* ---------- Borders ---------- */
  --g6-border: rgba(255, 255, 255, 0.15);        /* panels */
  --g6-border-soft: rgba(255, 255, 255, 0.1);    /* race banners, award block */
  --g6-outline: rgba(255, 255, 255, 0.33);       /* minimap outline, opacity .8 */

  /* ---------- Accents ---------- */
  --g6-pink: #ff85bc;      /* GPS arrow bg, mission name, destination, race sidebar */
  --g6-cyan: #00ffd0;      /* friend highlight in subtitles */
  --g6-health: #ff9cb4;    --g6-health-bg: #8a6870;
  --g6-stamina: #a7d7db;   --g6-stamina-bg: #485c68;
  --g6-oxygen: #7cffdc;    --g6-oxygen-bg: #197580;
  --g6-ability: #8068c3;   --g6-ability-bg: #3f2c77;
  --g6-price: #ffb3a1;     /* custom option tile, can't purchase */

  /* ---------- Text ---------- */
  --g6-text: #ffffff;
  --g6-text-soft: #f1ebfa;   /* condensed labels (213:1597) */
  --g6-text-muted: #cdcbd2;  /* weapon class (161:1142) */
  --g6-text-dim: #d9d9d9;    /* reserve ammo */
  --g6-text-money: #e4e4e4;
  --g6-text-prompt: #fdfdfd;
  --g6-text-model: rgba(255, 255, 255, 0.73);
  --g6-text-location: rgba(255, 255, 255, 0.55);

  /* ---------- Type ---------- */
  --g6-font: 'G6 Sans', sans-serif;
  --g6-font-cond: 'G6 Condensed', 'G6 Sans', sans-serif;
  --g6-font-money: 'Pricedown', 'G6 Condensed', sans-serif;

  /* ---------- Radii ---------- */
  --g6-r-panel: 8px;
  --g6-r-map: 16px;
  --g6-r-popup: 24px;

  /* ---------- Motion ---------- */
  --g6-fast: 120ms;
  --g6-med: 220ms;
  --g6-ease: cubic-bezier(.2, .7, .2, 1);
}

/* ---------- Reusable primitives (derived from the components above) ---------- */
/* No backdrop-filter anywhere: NUI is composited over the game, so the blur only ever sees the
   transparent page and turns the glass near black. The blur is dropped, the tints are kept. */
.g6-panel { background: var(--g6-panel); border: 1px solid var(--g6-border); border-radius: var(--g6-r-panel); }
.g6-glass { background: var(--g6-glass); border: 1px solid var(--g6-glass-border); }
.g6-glass.is-selected { background: var(--g6-glass-selected); border: 3px solid #fff; }
.g6-popup { background: var(--g6-popup); border-radius: var(--g6-r-popup); }
.g6-cond { font-family: var(--g6-font-cond); font-weight: 700; text-transform: uppercase; }

/* Keyboard glyph. A console build would use a button font. On PC the same slot shows
   the bound key: white disc, dark glyph, matching the size of the PS5 glyph (24px). */
.g6-key {
  display: inline-flex; align-items: center; justify-content: center;
  min-width: 24px; height: 24px; padding: 0 6px; border-radius: 12px;
  background: var(--g6-text-prompt); color: #151327;
  font-family: var(--g6-font-cond); font-weight: 700; font-size: 15px; line-height: 1;
}
.g6-key.is-wide { border-radius: 6px; }
