@layer base {
  @keyframes growWidth {
    from {
      width: 0%;
    }
    to {
      width: 100%;
    }
  }

  .grow-full-width {
    animation: growWidth 0.4s linear forwards;
  }

  @keyframes shimmer-signature {
    0% {
      transform: translateX(-100%);
    }
    17% {
      transform: translateX(100%);
    }
    100% {
      transform: translateX(100%);
    }
  }

  .shimmer-signature {
    position: relative;
    overflow: hidden;
  }

  .shimmer-signature::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
      20deg,
      transparent 0%,
      transparent 35%,
      rgba(255, 255, 255, 0.8) 50%,
      transparent 65%,
      transparent 100%
    );
    animation: shimmer-signature 3s linear infinite;
    pointer-events: none;
  }

  @keyframes finta-paste-cell-in {
    from { opacity: 0; }
    to   { opacity: 1; }
  }

  .finta-paste-cell-in {
    opacity: 0;
    animation: finta-paste-cell-in 240ms ease-out forwards;
  }

  /* Insert-next-period explainer: a looping mock of a zoomed-in sheet where a
     period is typed into one cell and the next period is filled from it with a
     formula. Every step is a separately keyframed overlay on the same two
     cells, so the whole sequence is one 4.5s timeline that stays in sync
     without JS. */
  .period-education {
    --period-education-duration: 4500ms;
    --period-education-cell-width: 65px;
    --period-education-cell-height: 22px;
    --period-education-grid-x: 10px;
    --period-education-grid-y: 6px;
    --period-education-cell-y: calc(var(--period-education-grid-y) + 2 * var(--period-education-cell-height));
  }

  /* Offset by one cell up and to the left so the ruled edges land on the grid
     lines the two animated cells sit on, with partial cells at every edge. */
  .period-education__grid {
    position: absolute;
    left: calc(var(--period-education-grid-x) - var(--period-education-cell-width));
    top: calc(var(--period-education-grid-y) - var(--period-education-cell-height));
    display: grid;
    grid-template-columns: repeat(4, var(--period-education-cell-width));
    grid-auto-rows: var(--period-education-cell-height);
  }

  .period-education__step {
    position: absolute;
    left: var(--period-education-grid-x);
    top: var(--period-education-cell-y);
    width: var(--period-education-cell-width);
    height: var(--period-education-cell-height);
    opacity: 0;
    animation-duration: var(--period-education-duration);
    animation-timing-function: linear;
    animation-iteration-count: infinite;
  }

  .period-education__step--select-first {
    animation-name: period-education-select-first;
  }

  .period-education__step--edit-first {
    animation-name: period-education-edit-first;
  }

  .period-education__step--value-first {
    animation-name: period-education-value-first;
  }

  .period-education__step--reference-first {
    animation-name: period-education-reference-first;
  }

  .period-education__step--select-second,
  .period-education__step--edit-second,
  .period-education__step--value-second,
  .period-education__step--select-below {
    left: calc(var(--period-education-grid-x) + var(--period-education-cell-width));
  }

  .period-education__step--select-second {
    animation-name: period-education-select-second;
  }

  .period-education__step--edit-second {
    animation-name: period-education-edit-second;
  }

  .period-education__step--value-second,
  .period-education__step--select-below {
    animation-name: period-education-second-committed;
  }

  .period-education__step--select-below {
    top: calc(var(--period-education-cell-y) + var(--period-education-cell-height));
  }

  /* Straddles the bottom-right corner of the selection, like the autofill
     handle the grid draws. The offsets clear the selection's own border. */
  .period-education__handle {
    position: absolute;
    right: -4px;
    bottom: -4px;
    width: 4px;
    height: 4px;
  }

  .period-education__editor {
    display: flex;
    align-items: center;
    overflow: hidden;
    padding-left: 4px;
    white-space: pre;
  }

  .period-education__value {
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .period-education__typed {
    flex: none;
    overflow: hidden;
    max-width: 0;
    animation-duration: var(--period-education-duration);
    animation-timing-function: linear;
    animation-iteration-count: infinite;
  }

  .period-education__typed--period {
    animation-name: period-education-type-period;
  }

  .period-education__typed--equals {
    animation-name: period-education-type-equals;
  }

  .period-education__typed--reference {
    animation-name: period-education-type-reference;
  }

  .period-education__typed--operator {
    animation-name: period-education-type-operator;
  }

  .period-education__typed--offset {
    animation-name: period-education-type-offset;
  }

  /* Each editor blinks its caret to its own transcribed rhythm, so the two get
     separate animations rather than one shared cycle. */
  .period-education__caret {
    flex: none;
    width: 1px;
    height: 13px;
    animation-duration: var(--period-education-duration);
    animation-timing-function: linear;
    animation-iteration-count: infinite;
  }

  .period-education__caret--first {
    animation-name: period-education-caret-first;
  }

  .period-education__caret--second {
    animation-name: period-education-caret-second;
  }

  /* Beats, as a share of the 4.5s loop: select 0%, edit 6.3%, period 18.9%,
     committed 36%, select the next cell 46.2%, then `=` 49.6%, the reference
     52.7%, `+` 56.2%, `1` 58.9% and committed at 80.4%. Steps hold until 0.1%
     before the next beat so each switch reads as instant. The exception is the
     last 300ms, where the filled cells cross-dissolve back into the empty
     starting selection so the loop doesn't cut. */
  @keyframes period-education-select-first {
    0%, 6.2% { opacity: 1; }
    6.3%, 93.2% { opacity: 0; animation-timing-function: ease-in-out; }
    100% { opacity: 1; }
  }

  @keyframes period-education-edit-first {
    0%, 6.2% { opacity: 0; }
    6.3%, 35.9% { opacity: 1; }
    36%, 100% { opacity: 0; }
  }

  @keyframes period-education-value-first {
    0%, 35.9% { opacity: 0; }
    36%, 93.2% { opacity: 1; animation-timing-function: ease-in-out; }
    100% { opacity: 0; }
  }

  @keyframes period-education-reference-first {
    0%, 52.6% { opacity: 0; }
    52.7%, 80.3% { opacity: 1; }
    80.4%, 100% { opacity: 0; }
  }

  @keyframes period-education-select-second {
    0%, 35.9% { opacity: 0; }
    36%, 46.1% { opacity: 1; }
    46.2%, 100% { opacity: 0; }
  }

  @keyframes period-education-edit-second {
    0%, 46.1% { opacity: 0; }
    46.2%, 80.3% { opacity: 1; }
    80.4%, 100% { opacity: 0; }
  }

  @keyframes period-education-second-committed {
    0%, 80.3% { opacity: 0; }
    80.4%, 93.2% { opacity: 1; animation-timing-function: ease-in-out; }
    100% { opacity: 0; }
  }

  @keyframes period-education-type-period {
    0%, 18.8% { max-width: 0; }
    18.9%, 100% { max-width: 5rem; }
  }

  @keyframes period-education-type-equals {
    0%, 49.5% { max-width: 0; }
    49.6%, 100% { max-width: 5rem; }
  }

  @keyframes period-education-type-reference {
    0%, 52.6% { max-width: 0; }
    52.7%, 100% { max-width: 5rem; }
  }

  @keyframes period-education-type-operator {
    0%, 56.1% { max-width: 0; }
    56.2%, 100% { max-width: 5rem; }
  }

  @keyframes period-education-type-offset {
    0%, 58.8% { max-width: 0; }
    58.9%, 100% { max-width: 5rem; }
  }

  /* Both carets transcribe the blink in the recording frame for frame rather
     than running a fixed cycle, which is what keeps it from reading as
     mechanical: lit 0.28s–0.62s, dark until the period lands at 0.85s, lit
     again until 1.33s, then dark into the commit. */
  @keyframes period-education-caret-first {
    0%, 13.6% { opacity: 1; }
    13.7%, 18.8% { opacity: 0; }
    18.9%, 29.5% { opacity: 1; }
    29.6%, 100% { opacity: 0; }
  }

  /* The formula caret, likewise: the two brief dark frames are where the
     recording's blink was cut short by the next keystroke. */
  @keyframes period-education-caret-second {
    0%, 49.2% { opacity: 1; }
    49.3%, 49.5% { opacity: 0; }
    49.6%, 55.1% { opacity: 1; }
    55.2%, 56.2% { opacity: 0; }
    56.3%, 61.8% { opacity: 1; }
    61.9%, 72.8% { opacity: 0; }
    72.9%, 79.9% { opacity: 1; }
    80%, 100% { opacity: 0; }
  }

}

@media (prefers-reduced-motion: reduce) {
  [data-checkbox-state] {
    transition: none !important;
  }

  .finta-paste-cell-in {
    opacity: 1;
    animation: none !important;
  }

  /* Rest on the last frame of the loop: both periods filled in. */
  .period-education__step,
  .period-education__typed,
  .period-education__caret {
    animation: none !important;
  }

  .period-education__step--value-first,
  .period-education__step--value-second,
  .period-education__step--select-below {
    opacity: 1;
  }

}
#admin-ai-categorizations .ai-categorization-inline-field .unit-input-field,
#admin-ai-categorizations .ai-categorization-inline-field [data-dropdown-combo--single-select-target="trigger"] {
  background-color: transparent;
  border-color: transparent;
  box-shadow: none;
}

.ai-categorization-inline-field:not(:focus-within):not(:has([data-menu-open])) {
  border-color: transparent;
}

.ai-categorization-inline-field:hover:not(:focus-within):not(:has([data-menu-open])) {
  border-color: inherit;
}

#admin-ai-categorizations [data-admin--ai-categorizations--row-target="control"].hidden {
  display: block;
  visibility: hidden;
}
@font-face {
  font-family: GeistMono;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/assets/GeistMono-Variable-90d0be2e2da7134bee175e8b8a9c8a9c0204739bbf17b84a4c048eab2f1a2022.woff2) format("woff2");
}
@font-face {
  font-family: "Geist Pixel";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/GeistPixel-Grid-5475f88e5d160edfcd6585583af07de8dba2fc50060c08c5152946e43b683d73.woff2) format("woff2");
}
/* Variable fonts usage:
:root { font-family: "Inter", sans-serif; }
@supports (font-variation-settings: normal) {
  :root { font-family: "InterVariable", sans-serif; font-optical-sizing: auto; }
} */
@font-face {
  font-family: InterVariable;
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(/assets/InterVariable-5db5a521938db7aaba812b5ef28f057725d3622a1e81c0a6ecd3ca6efd0a04ad.woff2) format("woff2");
}
@font-face {
  font-family: InterVariable;
  font-style: italic;
  font-weight: 100 900;
  font-display: swap;
  src: url(/assets/InterVariable-Italic-635017f7110876734b249b2917840fc9ca2e4af3b066d5b326d4aaf071c05eaf.woff2) format("woff2");
}

/* static fonts */
@font-face { font-family: "Inter"; font-style: normal; font-weight: 100; font-display: swap; src: url(/assets/Inter-Thin-8861f06fe791a1913f1665bf4351a2063ce78a714380b8926daf120bfb2cc415.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: italic; font-weight: 100; font-display: swap; src: url(/assets/Inter-ThinItalic-5d155acf67f9ec89584416879704983db06e061d72960d63555e9ed9e6b241c2.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 200; font-display: swap; src: url(/assets/Inter-ExtraLight-617dd36cc733d20cb9e623f080a57a0b14a297beffefcd8423aa781ea00c6dfb.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: italic; font-weight: 200; font-display: swap; src: url(/assets/Inter-ExtraLightItalic-dd3b2dc162e0573d740cf41e06791b1bd1962afe784ddababe18d99400392e68.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 300; font-display: swap; src: url(/assets/Inter-Light-dfa7e89569b7f7ca04886d9cb5fd8134edc102665c13d9bd48e2d1e71f259f68.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: italic; font-weight: 300; font-display: swap; src: url(/assets/Inter-LightItalic-8108bd691de06e316c975e6efc5dc1813ebc0b81d4fdf3f919c99bb7d36532e4.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 400; font-display: swap; src: url(/assets/Inter-Regular-5ff914dcc4f17d16b53a50999fa201bd71eff430101aa255cd2e2c4b3b9ca8f5.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: italic; font-weight: 400; font-display: swap; src: url(/assets/Inter-Italic-8f4411341b759b8021378a00d7f2d9c8bc0cb393e7158345077147d57225eba6.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 500; font-display: swap; src: url(/assets/Inter-Medium-6a5412fa515d59e84c9dac4f01f6de2b4b6e355a37ed1a585cc31cbde296dc4c.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: italic; font-weight: 500; font-display: swap; src: url(/assets/Inter-MediumItalic-494ccf97ddb0143f4105a90f52a22be0208a65b71cef8ba58148eb622ccf2d3e.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 600; font-display: swap; src: url(/assets/Inter-SemiBold-97fc520ab935d5b172431674e4968af12db7e5a6d07330c0a054bf6b7864f938.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: italic; font-weight: 600; font-display: swap; src: url(/assets/Inter-SemiBoldItalic-c3cac38cbc97de04d0577e448b20f3c424c2726136771abbd7caff49d8a0e843.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 700; font-display: swap; src: url(/assets/Inter-Bold-8b879e329596393ae87ea8776e1e1f3aa6ccd95da26927ed7108c25c5425d33e.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: italic; font-weight: 700; font-display: swap; src: url(/assets/Inter-BoldItalic-b35668c2a100a8b142d3462136e019393ae66c7f2af75b8ed8427ee91e49a8d1.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 800; font-display: swap; src: url(/assets/Inter-ExtraBold-8c48ede6c7c3c67c3a6be7567926694e5cd1eb798b7ff73d29bbccb751c89703.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: italic; font-weight: 800; font-display: swap; src: url(/assets/Inter-ExtraBoldItalic-14b7a2758074062d7a48e43324e7f4723d230426f5261f705a88c8fa51e3bb1b.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: normal; font-weight: 900; font-display: swap; src: url(/assets/Inter-Black-1bcb48b7543ca20ae21321dad362bc32f525c2e836444a84712ee9b6f9392fbb.woff2) format("woff2"); }
@font-face { font-family: "Inter"; font-style: italic; font-weight: 900; font-display: swap; src: url(/assets/Inter-BlackItalic-911904f1cae10e27cc9c2521f6e385ff2be13b4a2a242da3270f165bf95e7c0c.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 100; font-display: swap; src: url(/assets/InterDisplay-Thin-ea12b81865e990076f05ce21778ff2d7ba3002353e019ecdb28abd70c128ef66.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 100; font-display: swap; src: url(/assets/InterDisplay-ThinItalic-867dc625851de3f5efb29345f5459896b41fa016a6e0550a243b75d2459a900b.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 200; font-display: swap; src: url(/assets/InterDisplay-ExtraLight-48cbaf521acc083dc515ef959aaba5f00439dc4968ade1b9d28be4e4139cb0cc.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 200; font-display: swap; src: url(/assets/InterDisplay-ExtraLightItalic-e149c8ff7e578f23c63b928b385f1d44ff09e74c673f8a404a079938184f011f.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 300; font-display: swap; src: url(/assets/InterDisplay-Light-6065f9c63d0f23d7a466f69c80e0635f3146c18abc823102b9915bdea8c58319.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 300; font-display: swap; src: url(/assets/InterDisplay-LightItalic-94cc598b2e3a5643757362c7c70ff14cb2e92e422efdd2d7bb99490e843aced2.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 400; font-display: swap; src: url(/assets/InterDisplay-Regular-bcf5b6ad4c8f3413e444d1a57f59cda799bae37a1caf39c8b6382f79403449ed.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 400; font-display: swap; src: url(/assets/InterDisplay-Italic-a02bf14920dbd2ff2d80846b3da3ea9b68fdaccab2b03f17649b9681a67b96ac.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 500; font-display: swap; src: url(/assets/InterDisplay-Medium-3a8b9c4cd4b8458ebdb4f648558e56be542ea80eaaf3ee2768d487a12a967c5c.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 500; font-display: swap; src: url(/assets/InterDisplay-MediumItalic-9b22eaabdac4ad5fd8da25f015b6d6b3daf64f627fcd5f3d62575b34df99c6e0.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 600; font-display: swap; src: url(/assets/InterDisplay-SemiBold-5942e5d7eaf37b5c5d589484d8d4160f2c0c392a83408b35ebbac08c56956c12.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 600; font-display: swap; src: url(/assets/InterDisplay-SemiBoldItalic-2f7bcdd7c20989dd60f88b59b4a28c5481e7b5ca246d9aac0ed34820586f9c87.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 700; font-display: swap; src: url(/assets/InterDisplay-Bold-4fa6e65712642460c076ea4d6cbb3dcc729c9f60895409e0cb1a9199dc8e6aa0.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 700; font-display: swap; src: url(/assets/InterDisplay-BoldItalic-6c2dbe958c200c93d29b0c7005ea7535343b42a73772a26e7a027d835c314717.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 800; font-display: swap; src: url(/assets/InterDisplay-ExtraBold-0adfa52a4cfd8abf77aedecc763d8e62edd76dbff0eb4a48d1892cded15549bf.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 800; font-display: swap; src: url(/assets/InterDisplay-ExtraBoldItalic-5d993de7d2b3ddcaa69a11d4502a4532078c17f3070c77a572cfe11fab52bddd.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: normal; font-weight: 900; font-display: swap; src: url(/assets/InterDisplay-Black-91c25f91be1c383f8cd8cbc80b2242e94aa11ad8958e9a54f5bfcbfed510e05d.woff2) format("woff2"); }
@font-face { font-family: "InterDisplay"; font-style: italic; font-weight: 900; font-display: swap; src: url(/assets/InterDisplay-BlackItalic-0b4c26dd2d33852659126b466567e65f9011715081f3b7f2d06229871fcfcc5a.woff2) format("woff2"); }

@font-feature-values InterVariable {
    @character-variant {
        cv01: 1; cv02: 2; cv03: 3; cv04: 4; cv05: 5; cv06: 6; cv07: 7; cv08: 8;
        cv09: 9; cv10: 10; cv11: 11; cv12: 12; cv13: 13;
        alt-1:            1; /* Alternate one */
        alt-3:            9; /* Flat-top three */
        open-4:           2; /* Open four */
        open-6:           3; /* Open six */
        open-9:           4; /* Open nine */
        lc-l-with-tail:   5; /* Lower-case L with tail */
        simplified-u:     6; /* Simplified u */
        alt-double-s:     7; /* Alternate German double s */
        uc-i-with-serif:  8; /* Upper-case i with serif */
        uc-g-with-spur:  10; /* Capital G with spur */
        single-story-a:  11; /* Single-story a */
        compact-lc-f:    12; /* Compact f */
        compact-lc-t:    13; /* Compact t */
    }
    @styleset {
        ss01: 1; ss02: 2; ss03: 3; ss04: 4; ss05: 5; ss06: 6; ss07: 7; ss08: 8;
        open-digits: 1;                /* Open digits */
        disambiguation: 2;             /* Disambiguation (with zero) */
        disambiguation-except-zero: 4; /* Disambiguation (no zero) */
        round-quotes-and-commas: 3;    /* Round quotes &amp; commas */
        square-punctuation: 7;         /* Square punctuation */
        square-quotes: 8;              /* Square quotes */
        circled-characters: 5;         /* Circled characters */
        squared-characters: 6;         /* Squared characters */
    }
}
@font-feature-values Inter {
    @character-variant {
        cv01: 1; cv02: 2; cv03: 3; cv04: 4; cv05: 5; cv06: 6; cv07: 7; cv08: 8;
        cv09: 9; cv10: 10; cv11: 11; cv12: 12; cv13: 13;
        alt-1:            1; /* Alternate one */
        alt-3:            9; /* Flat-top three */
        open-4:           2; /* Open four */
        open-6:           3; /* Open six */
        open-9:           4; /* Open nine */
        lc-l-with-tail:   5; /* Lower-case L with tail */
        simplified-u:     6; /* Simplified u */
        alt-double-s:     7; /* Alternate German double s */
        uc-i-with-serif:  8; /* Upper-case i with serif */
        uc-g-with-spur:  10; /* Capital G with spur */
        single-story-a:  11; /* Single-story a */
        compact-lc-f:    12; /* Compact f */
        compact-lc-t:    13; /* Compact t */
    }
    @styleset {
        ss01: 1; ss02: 2; ss03: 3; ss04: 4; ss05: 5; ss06: 6; ss07: 7; ss08: 8;
        open-digits: 1;                /* Open digits */
        disambiguation: 2;             /* Disambiguation (with zero) */
        disambiguation-except-zero: 4; /* Disambiguation (no zero) */
        round-quotes-and-commas: 3;    /* Round quotes &amp; commas */
        square-punctuation: 7;         /* Square punctuation */
        square-quotes: 8;              /* Square quotes */
        circled-characters: 5;         /* Circled characters */
        squared-characters: 6;         /* Squared characters */
    }
}
@font-feature-values InterDisplay {
    @character-variant {
        cv01: 1; cv02: 2; cv03: 3; cv04: 4; cv05: 5; cv06: 6; cv07: 7; cv08: 8;
        cv09: 9; cv10: 10; cv11: 11; cv12: 12; cv13: 13;
        alt-1:            1; /* Alternate one */
        alt-3:            9; /* Flat-top three */
        open-4:           2; /* Open four */
        open-6:           3; /* Open six */
        open-9:           4; /* Open nine */
        lc-l-with-tail:   5; /* Lower-case L with tail */
        simplified-u:     6; /* Simplified u */
        alt-double-s:     7; /* Alternate German double s */
        uc-i-with-serif:  8; /* Upper-case i with serif */
        uc-g-with-spur:  10; /* Capital G with spur */
        single-story-a:  11; /* Single-story a */
        compact-lc-f:    12; /* Compact f */
        compact-lc-t:    13; /* Compact t */
    }
    @styleset {
        ss01: 1; ss02: 2; ss03: 3; ss04: 4; ss05: 5; ss06: 6; ss07: 7; ss08: 8;
        open-digits: 1;                /* Open digits */
        disambiguation: 2;             /* Disambiguation (with zero) */
        disambiguation-except-zero: 4; /* Disambiguation (no zero) */
        round-quotes-and-commas: 3;    /* Round quotes &amp; commas */
        square-punctuation: 7;         /* Square punctuation */
        square-quotes: 8;              /* Square quotes */
        circled-characters: 5;         /* Circled characters */
        squared-characters: 6;         /* Squared characters */
    }
}
@font-face {
  font-family: "PT Serif";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/PTSerif-Regular-ee549525576d7d4e1b1c6dbe5f0cf8134e19f3539810eb9de48f95fbaf4fc6db.woff2) format("woff2");
}
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS (and SCSS, if configured) file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *



 */
