/* ==========================================================================
   Self-Hosted Google Material Symbols & Material Icons
   Official Google Fonts WOFF2 Asset Definitions
   Zero external network requests to Google CDNs for icons
   ========================================================================== */

/* 1. Material Symbols Outlined (Modern Google Variable Font) */
@font-face {
  font-family: 'Material Symbols Outlined';
  font-style: normal;
  font-weight: 100 700;
  font-display: swap;
  src: url('/assets/fonts/material-symbols-outlined.woff2') format('woff2');
}

/* 2. Material Symbols Rounded (Variable Font) */
@font-face {
  font-family: 'Material Symbols Rounded';
  font-style: normal;
  font-weight: 100 700;
  font-display: swap;
  src: url('/assets/fonts/material-symbols-rounded.woff2') format('woff2');
}

/* 3. Material Icons (Classic Font) */
@font-face {
  font-family: 'Material Icons';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/material-icons.woff2') format('woff2');
}

/* Base Class: Material Symbols Outlined */
.material-symbols-outlined {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  font-size: 22px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
  vertical-align: -0.15em;
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* Filled Variation */
.material-symbols-outlined.filled {
  font-variation-settings: 'FILL' 1, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* Base Class: Material Symbols Rounded */
.material-symbols-rounded {
  font-family: 'Material Symbols Rounded';
  font-weight: normal;
  font-style: normal;
  font-size: 22px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
  vertical-align: -0.15em;
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

/* Base Class: Material Icons */
.material-icons {
  font-family: 'Material Icons';
  font-weight: normal;
  font-style: normal;
  font-size: 22px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
  vertical-align: -0.15em;
}

/* Sizing Modifiers */
.g-icon-14 { font-size: 14px !important; }
.g-icon-16 { font-size: 16px !important; }
.g-icon-18 { font-size: 18px !important; }
.g-icon-20 { font-size: 20px !important; }
.g-icon-22 { font-size: 22px !important; }
.g-icon-24 { font-size: 24px !important; }
.g-icon-28 { font-size: 28px !important; }
.g-icon-32 { font-size: 32px !important; }
.g-icon-36 { font-size: 36px !important; }
.g-icon-48 { font-size: 48px !important; }
