// (C)opyright 2020-11-18 Dirk Holtwick, holtwick.it. All rights reserved.

-font-sans = ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"
-font-serif = ui-serif, Georgia, Cambria, "Times New Roman", Times, serif
-font-mono = ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace

font-sans()
  font-family -font-sans

font-serif()
  font-family -font-serif

font-mono()
  font-family -font-mono

//

italic(on = true)
  font-style: on ? italic : normal

font-italic = italic

bold(on = true)
  font-weight: on ? 700 : normal

font-hairline()
  font-weight 100

font-thin()
  font-weight 200

font-light()
  font-weight 300

font-normal()
  font-weight 400

font-medium()
  font-weight 500

font-semibold()
  font-weight 600

font-bold = bold
//  font-weight 700

font-extrabold()
  font-weight 800

font-black()
  font-weight 900

// https://tailwindcss.com/docs/font-size

font-size(value)
  font-size rex(value)

text-xs()
  font-size 0.75rem

text-sm()
  font-size 0.875rem

text-base()
  font-size 1rem

text-lg()
  font-size 1.125rem

text-xl()
  font-size 1.25rem

text-2xl()
  font-size 1.5rem

text-3xl()
  font-size 1.875rem

text-4xl()
  font-size 2.25rem

text-5xl()
  font-size 3rem

text-6xl()
  font-size 4rem

// https://tailwindcss.com/docs/letter-spacing

tracking-tighter()
  letter-spacing -0.05em

tracking-tight()
  letter-spacing -0.025em

tracking-normal()
  letter-spacing 0

tracking-wide()
  letter-spacing 0.025em

tracking-wider()
  letter-spacing 0.05em

tracking-widest()
  letter-spacing 0.1em


//

break-normal()
  overflow-wrap: normal
  word-break: normal

break-words()
  overflow-wrap: break-word

break-all()
  word-break: break-all

//

font-tabular-numbers()
  font-variant-numeric tabular-nums
  -moz-font-feature-settings "tnum"
  -webkit-font-feature-settings "tnum"
  font-feature-settings "tnum"

//

no-wrap = unquote('nowrap')

whitespace()
  white-space: arguments

// Ellipsis with wrapping disabled by default.
ellipsis(no-wrap = true)
  if no-wrap
    white-space: nowrap
  overflow: hidden
  text-overflow: ellipsis


// Screen Readers
// https://tailwindcss.com/docs/screen-readers

screen-reader-only(sr = true)
  if sr
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
  else
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: visible;
    clip: auto;
    white-space: normal;
