/* Engraving font faces — one @font-face per .ttf file in assets/fonts/. */
@font-face {
  font-family: 'EngraveEnglischeSchT';
  src: url('../fonts/EnglischeSchT-Regular.ttf') format('truetype');
  font-display: swap;
}
@font-face {
  font-family: 'EngraveArial';
  src: url('../fonts/arial.ttf') format('truetype');
  font-display: swap;
}
@font-face {
  font-family: 'EngraveLato';
  src: url('../fonts/Lato-Regular.ttf') format('truetype');
  font-display: swap;
}
@font-face {
  font-family: 'EngraveLibertinusMono';
  src: url('../fonts/LibertinusMono-Regular.ttf') format('truetype');
  font-display: swap;
}
@font-face {
  font-family: 'EngraveOpenSansCondensed';
  src: url('../fonts/OpenSans_Condensed-Regular.ttf') format('truetype');
  font-display: swap;
}
@font-face {
  font-family: 'EngravePoppins';
  src: url('../fonts/Poppins-Regular.ttf') format('truetype');
  font-display: swap;
}

/* Symbol font for inline engraving glyphs (PUA codepoints).
   Loaded BLOCK so a momentary FOIT is preferred over a glyph-shaped
   placeholder for codepoints that have no fallback in any other font. */
@font-face {
  font-family: 'egne-symboly';
  src: url('../fonts/egne-symboly.woff2') format('woff2'),
       url('../fonts/egne-symboly.woff') format('woff'),
       url('../fonts/egne-symboly.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

/* Utility classes — apply one to a text input / button to preview the engraving font.
   'egne-symboly' sits in each stack so PUA codepoints (E000+) inserted into the
   text fall back per-glyph to the symbol font while regular characters still
   render in the chosen engraving font. */
.engrave-font-englischescht,
.engrave-font-englischescht::placeholder {
  font-family: 'EngraveEnglischeSchT', 'egne-symboly', cursive !important;
}
.engrave-font-arial,
.engrave-font-arial::placeholder {
  font-family: 'EngraveArial', 'egne-symboly', Arial, Helvetica, sans-serif !important;
}
.engrave-font-lato,
.engrave-font-lato::placeholder {
  font-family: 'EngraveLato', 'egne-symboly', Arial, sans-serif !important;
}
.engrave-font-libertinus,
.engrave-font-libertinus::placeholder {
  font-family: 'EngraveLibertinusMono', 'egne-symboly', 'Courier New', monospace !important;
}
.engrave-font-opensans,
.engrave-font-opensans::placeholder {
  font-family: 'EngraveOpenSansCondensed', 'egne-symboly', 'Arial Narrow', sans-serif !important;
}
.engrave-font-poppins,
.engrave-font-poppins::placeholder {
  font-family: 'EngravePoppins', 'egne-symboly', Arial, sans-serif !important;
}

/* Symbol picker buttons — each button shows a single glyph from the
   egne-symboly font. Generic sans-serif fallback handles legacy non-PUA
   codes like "(A)" so they still render readably. */
.engraving-symbol-glyph {
  font-family: 'egne-symboly', sans-serif;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

