/* ============================================================
   FlyByWire brand tokens + base skin  (source: BRAND_TOKENS.md)
   "Σήμα μέσα στον θόρυβο" / SIGNAL OVER NOISE
   ============================================================ */
:root {
  /* Colors */
  --fbw-fuchsia:#C9265C; --fbw-fuchsia-light:#E0517F; --fbw-fuchsia-deep:#8C214F;
  --fbw-cyan:#18D9D2; --fbw-cyan-light:#5FE9E4; --fbw-cyan-deep:#0E9C97;
  --fbw-stage-black:#0A0A0B; --fbw-bone-white:#F4F2EF;
  --fbw-grey-1:#2A2A2C; --fbw-grey-2:#58585A; --fbw-grey-3:#8E8E90; --fbw-grey-4:#C6C6C8;

  /* Semantic */
  --fbw-bg:var(--fbw-stage-black);
  --fbw-text:var(--fbw-bone-white);
  --fbw-signal:var(--fbw-fuchsia);       /* one signal per frame, <=10% */
  --fbw-signal-data:var(--fbw-cyan);     /* data / technical channel only */

  /* Type */
  --fbw-font-display:"Fira Sans Extra Condensed",sans-serif; /* CAPS 900/700 */
  --fbw-font-text:"Commissioner",sans-serif;                 /* 300/400/700 */
  --fbw-font-data:"JetBrains Mono",monospace;                /* 400/700, fuchsia/cyan */
  --fbw-tracking-tight:0.22em; --fbw-tracking-mid:0.4em; --fbw-tracking-wide:1em;

  /* Shape */
  --fbw-radius:0; --fbw-radius-pill:999px;
  --fbw-shadow-print:4px 4px 0 var(--fbw-stage-black); /* hard offset, never blur */

  /* Map onto Blocksy palette so theme controls inherit the brand */
  --theme-palette-color-1:var(--fbw-fuchsia);
  --theme-palette-color-2:var(--fbw-fuchsia-deep);
  --theme-palette-color-3:var(--fbw-bone-white);
  --theme-palette-color-4:var(--fbw-grey-4);
  --theme-palette-color-5:var(--fbw-grey-1);
  --theme-palette-color-6:#141416;
  --theme-palette-color-7:var(--fbw-stage-black);
  --theme-palette-color-8:#000000;
  --theme-link-initial-color:var(--fbw-fuchsia);
  --theme-link-hover-color:var(--fbw-fuchsia-light);
}

/* Base skin (front-end) */
body{
  background-color:var(--fbw-bg);
  color:var(--fbw-text);
  font-family:var(--fbw-font-text);
  font-weight:400;
}

h1,h2,h3,h4,h5,h6,.fbw-display{
  font-family:var(--fbw-font-display);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:var(--fbw-tracking-tight);
  line-height:1.02;
}

/* Data / labels / links-as-data */
.fbw-data,code,kbd,samp,.wp-block-code{
  font-family:var(--fbw-font-data);
  color:var(--fbw-signal-data);
  letter-spacing:0.02em;
}

a{color:var(--fbw-fuchsia);}
a:hover{color:var(--fbw-fuchsia-light);}

/* Sharp corners by default; pill reserved for the signal capsule */
.wp-block-button__link,button,input,select,textarea{border-radius:var(--fbw-radius);}
.fbw-signal-capsule{border-radius:var(--fbw-radius-pill);background:var(--fbw-signal);color:var(--fbw-bone-white);
  font-family:var(--fbw-font-data);text-transform:uppercase;letter-spacing:0.12em;padding:.25em .8em;display:inline-block;}

/* Hard-offset shadow utility (never blur) */
.fbw-shadow{box-shadow:var(--fbw-shadow-print);}

/* Respect reduced motion globally */
@media (prefers-reduced-motion:reduce){
  *{animation-duration:0.001ms !important;animation-iteration-count:1 !important;transition-duration:0.001ms !important;}
}
