/* master Guest Portal — foundation tokens (subset of master Design System) */

@font-face {
  font-family: 'Schnyder Wide S';
  font-weight: 300; font-style: normal;
  src: url('../fonts/SchnyderWideS-Light-Web.woff') format('woff');
  font-display: swap;
}
@font-face {
  font-family: 'Schnyder Wide S';
  font-weight: 700; font-style: normal;
  src: url('../fonts/SchnyderWideS-Bold-Web.woff') format('woff');
  font-display: swap;
}
@font-face {
  font-family: 'GT America Mono';
  font-weight: 300; font-style: normal;
  src: url('../fonts/GT-America-Mono-Light.ttf') format('truetype');
  font-display: swap;
}
@font-face {
  font-family: 'Lucky Times';
  font-weight: 400; font-style: italic;
  src: url('../fonts/LuckyTimes-Italic.ttf') format('truetype');
  font-display: swap;
}
/* Hebrew display + text faces (Futurism). Each is pinned to one weight file and
   accepts any requested weight, so a heading at weight 300 still renders the
   intended Bold/Regular cut. */
@font-face {
  font-family: 'Futurism Display';
  font-weight: 100 900; font-style: normal;
  src: url('../fonts/Futurism-Bold.otf') format('opentype');
  font-display: swap;
}
@font-face {
  font-family: 'Futurism Text';
  font-weight: 100 900; font-style: normal;
  src: url('../fonts/Futurism-Regular.otf') format('opentype');
  font-display: swap;
}

:root {
  /* Core palette */
  --color-green-deep:    #003319;
  --color-green-primary: #044122;
  --color-green-dark:    #023D1F;
  --color-green-sage:    #7F9583;
  --color-green-light:   #ECF6F1;
  --color-red:           #C33029;
  --color-red-dark:      #B02820;
  --color-gold:          #957039;
  --color-cream:         #F9F4EA;
  --color-cream-dark:    #F1EBE0;
  --color-cream-deeper:  #EDE7D8;
  --color-charcoal:      #2D2D2C;
  --color-black-soft:    #030404;
  --color-dark-bg:       #1D1D1B;
  --color-gray-mid:      #636260;
  --color-border:        #C7C1B5;
  --color-border-light:  #D3CDC0;
  --color-white:         #FFFFFF;

  --shadow-subtle: 0px 0px 14px 0px rgba(0,0,0,0.05);
  --shadow-card:   0px 4.8px 16px 0px rgba(0,0,0,0.08);
  --shadow-medium: 0px 2px 12px 0px rgba(0,0,0,0.10);

  /* Latin text always uses the brand faces (Schnyder / GT America / Lucky Times).
     Hebrew glyphs, absent in those, fall through to the Futurism Hebrew cuts:
     display → Futurism Bold, accent → Futurism Regular, body → IBM Plex Sans Hebrew. */
  --font-serif: 'Schnyder Wide S', 'Futurism Display', Georgia, serif;
  --font-mono:  'GT America Mono', 'IBM Plex Sans Hebrew', 'Courier New', monospace;
  --font-accent:'Lucky Times', 'Futurism Text', cursive;

  --tracking-mono: 0.04em;
  --tracking-wide: 0.12em;
}

/* Hebrew / RTL: the Latin brand faces lack Hebrew glyphs, so those fall through
   to the Hebrew faces above. Disable faux-italic so Hebrew accent text (which has
   no real italic) renders upright instead of mechanically slanted. */
[dir="rtl"] { font-synthesis: weight; }

/* Theme surfaces — driven by [data-theme] on the portal root */
[data-theme="light"] {
  --bg:        var(--color-cream);
  --bg-2:      var(--color-cream-dark);
  --bg-3:      var(--color-cream-deeper);
  --surface:   #FFFDF8;
  --fg:        var(--color-charcoal);
  --fg-muted:  var(--color-gray-mid);
  --fg-faint:  var(--color-green-sage);
  --line:      rgba(45,45,44,0.12);
  --line-strong: rgba(45,45,44,0.20);
  --brand:     var(--color-green-primary);
  --on-brand:  var(--color-cream);
  --topbar:    var(--color-green-primary);
  --on-topbar: var(--color-cream);
  --illustration: var(--color-green-primary);
}
[data-theme="dark"] {
  --bg:        var(--color-green-deep);
  --bg-2:      #0A3A23;
  --bg-3:      #0E4429;
  --surface:   #0B3B24;
  --fg:        var(--color-cream);
  --fg-muted:  #A8BBAF;
  --fg-faint:  var(--color-green-sage);
  --line:      rgba(249,244,234,0.14);
  --line-strong: rgba(249,244,234,0.24);
  --brand:     var(--color-cream);
  --on-brand:  var(--color-green-deep);
  --topbar:    #03250F;
  --on-topbar: var(--color-cream);
  --illustration: var(--color-cream);
}
