@charset "UTF-8";
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 500;
  src: url("https://assets.myon.com/img/fonts/Roboto/Roboto_500.eot?#iefix") format("embedded-opentype"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_500.woff?c=08ca17db0a") format("woff"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_500.woff2?c=01a44f86a9") format("woff2"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_500.svg?c=002be2764e#Roboto") format("svg");
}
@font-face {
  font-family: "Roboto";
  font-style: italic;
  font-weight: 400;
  src: url("https://assets.myon.com/img/fonts/Roboto/Roboto_400italic.eot?#iefix") format("embedded-opentype"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_400italic.woff?c=b8ecb55e05") format("woff"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_400italic.woff2?c=4bdf94f8f2") format("woff2"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_400italic.svg?c=ea2903eaf3#Roboto") format("svg");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 300;
  src: url("https://assets.myon.com/img/fonts/Roboto/Roboto_300.eot?#iefix") format("embedded-opentype"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_300.woff?c=698e5ebaee") format("woff"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_300.woff2?c=d491143733") format("woff2"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_300.svg?c=bdc613d606#Roboto") format("svg");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 700;
  src: url("https://assets.myon.com/img/fonts/Roboto/Roboto_700.eot?#iefix") format("embedded-opentype"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_700.woff?c=3eb65ce80a") format("woff"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_700.woff2?c=413a32337b") format("woff2"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_700.svg?c=8af2654240#Roboto") format("svg");
}
@font-face {
  font-family: "Roboto";
  font-style: normal;
  font-weight: 400;
  src: url("https://assets.myon.com/img/fonts/Roboto/Roboto_400.eot?#iefix") format("embedded-opentype"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_400.woff?c=97bb986342") format("woff"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_400.woff2?c=f7bbc8461b") format("woff2"), url("https://assets.myon.com/img/fonts/Roboto/Roboto_400.svg?c=cc9d8f0f4f#Roboto") format("svg");
}
@font-face {
  font-family: "Roboto Slab";
  font-style: normal;
  font-weight: 400;
  src: url("https://assets.myon.com/img/fonts/Roboto_Slab/Roboto_slab_regular.ttf?c=0747d3bb1a") format("ttf"), url("https://assets.myon.com/img/fonts/Roboto_Slab/Roboto_Slab_regular.woff?c=f2c510c36c") format("woff"), url("https://assets.myon.com/img/fonts/Roboto_Slab/Roboto_Slab_regular.woff2?c=8e099f5250") format("woff2"), url("https://assets.myon.com/img/fonts/Roboto_Slab/Roboto_Slab_regular.eot?c=b7d311221e") format("embedded-opentype");
}
@font-face {
  font-family: "Roboto Slab";
  font-style: normal;
  font-weight: 700;
  src: url("https://assets.myon.com/img/fonts/Roboto_Slab/Roboto_Slab_700.ttf?c=fec00dfd52") format("ttf"), url("https://assets.myon.com/img/fonts/Roboto_Slab/Roboto_Slab_700.woff?c=b7ac25c862") format("woff"), url("https://assets.myon.com/img/fonts/Roboto_Slab/Roboto_Slab_700.woff2?c=2c45003af2") format("woff2"), url("https://assets.myon.com/img/fonts/Roboto_Slab/Roboto_Slab_700.eot?c=5649d371d4") format("embedded-opentype");
}
html,
select,
select > option,
input,
button,
textarea {
  font-family: "Roboto", sans-serif;
  font-weight: normal;
  font-size: 1rem;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  padding: 0;
  margin: 0;
}

[hidden] {
  display: none !important;
}

* {
  box-sizing: border-box;
}

split-button * {
  position: absolute;
  left: -200000px;
}

.card::before {
  content: " ";
  display: table;
}

.bookRecording_title.-disabled, .bookRecording.-list .bookRecording_status, .bookRecording_coverLink.-disabled {
  pointer-events: none;
  cursor: default;
}

@media print {
  .fIcon {
    -webkit-print-color-adjust: exact;
  }
}

.radioGroup, .dataGrid_close, .check-input + label, section.disabled {
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}

.g_verticalOverflow, .dictionary_content, .fixedHeaderTable_tableContainer, .listbox.-overflow {
  will-change: scroll-position;
}

.sidesheet_noscroll, .modal_noscroll {
  overflow: hidden;
}

.view-hidden {
  opacity: 0 !important;
}

.myon-icon {
  width: 175px;
  height: 60px;
  display: block;
  background: no-repeat center/155px 40px url("https://assets.myon.com/img/ren_logo/myon-white-v2.svg?c=754dd9e53a");
}

@media screen and (max-width: 800px) {
  aside {
    padding: 10px 10px 40px 5px;
  }
  aside label.header-action {
    font-size: smaller;
  }
}
.check-input {
  position: absolute;
  left: -200000px;
}
.check-input + .check-input-hidden {
  display: none;
}
.check-input:checked + .check-input-hidden {
  display: block;
  display: initial;
}

.teacher-comments-header,
.peer-comments-header {
  background-color: #e0c8ff;
  display: inline-block;
  font-size: 1rem;
  border-radius: 3px;
  padding: 0.2em 0.5em;
}

.peer-comments-header {
  background-color: #fbcb92;
}

.project-card-cover-img {
  object-fit: cover;
  height: 90px;
  width: 100%;
}

.text-notice {
  border-radius: 5px;
  padding: 10px 15px;
  display: inline-block;
  background: #ff9c33;
  color: #000;
  white-space: nowrap;
}
.text-notice.disabled {
  display: none;
}

input.chrome-password-fix {
  display: none !important;
  position: absolute;
  left: -100000px;
  visibility: collapse;
}

.material-open {
  border-radius: 100%;
  transform: scale(0, 0);
  transform-origin: 50% 50%;
  transition: transform 1000ms, opacity 500ms;
  width: 280vw;
  height: 280vw;
  margin-top: -140vw;
  margin-left: -140vw;
  position: fixed;
  z-index: 1000;
  opacity: 0.7;
}
.material-open.animate {
  transform: scale(1, 1);
  opacity: 1;
}
.material-open.reader {
  background-color: #15161d;
}

.journal-text {
  background-color: #fff;
  border-radius: 4px;
}
.journal-text > .quotation,
.journal-text > .citation {
  background-color: #f7f6f9;
  padding: 20px;
  border-radius: 2px;
}
.journal-text > .quotation {
  font-style: italic;
}

.table-toolbar {
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  border-right: 1px solid rgba(0, 0, 0, 0.15);
  border-left: 1px solid rgba(255, 255, 255, 0.5);
  padding: 10px;
}

.ts-filter-hidden {
  display: none;
}

section.disabled > * {
  opacity: 0.5;
}

.disabled-text {
  font-style: italic;
  color: #aaa;
}

.disabled-content {
  opacity: 0.5;
  pointer-events: none;
}

.row-deleted td {
  background: #fcc !important;
}

.search-count {
  border-radius: 20px;
  background: #fff;
  min-width: 100px;
  text-align: center;
  border: 1px solid #aaa;
  font-weight: bold;
  padding: 5px 10px;
}

.review-text {
  margin-left: 10px;
  opacity: 0;
  height: 0;
  overflow: hidden;
}
.review-container:hover .review-text {
  opacity: 1;
  height: auto;
}

.review-container {
  max-width: 250px;
}
.review-container:hover .rating-container {
  opacity: 0;
  height: 0;
  overflow: hidden;
}

.book-cover-image-only {
  border-radius: 2px;
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.5);
}

@keyframes emphasize-scale-rotate {
  0% {
    transform: rotate(0deg);
  }
  30% {
    transform: scale(1.2);
  }
  50% {
    transform: rotate(-10deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
@keyframes fade-scale-in {
  from {
    transform: scale(0.7);
    opacity: 0;
  }
  to {
    transform: scale(1);
    opacity: 1;
  }
}
@keyframes spin-grow-in {
  0% {
    transform: rotate(720deg) scale(0.1);
  }
  100% {
    transform: rotate(0deg) scale(1);
  }
}
@keyframes material-click-in {
  0% {
    transform: scale(0.1);
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}
@keyframes ringing-bell {
  0% {
    transform: rotateZ(0);
  }
  5% {
    transform: rotateZ(30deg);
  }
  10% {
    transform: rotateZ(-25deg);
  }
  15% {
    transform: rotateZ(20deg);
  }
  20% {
    transform: rotateZ(-15deg);
  }
  25% {
    transform: rotateZ(10deg);
  }
  30% {
    transform: rotateZ(-5deg);
  }
  40% {
    transform: rotateZ(0deg);
  }
}
@keyframes oversaturate {
  from {
    filter: saturate(200%);
  }
  to {
    filter: saturate(100%);
  }
}
@keyframes bounce-and-squeeze {
  from {
    margin-top: -35px;
    transform: scale(1.1, 0.9);
  }
  50% {
    transform: none;
  }
  to {
    margin-top: 35px;
    transform: scale(1.1, 0.9);
  }
}
html {
  --background-layer: none;
  background: #f2f5fb;
  background: #f2f5fb var(--background-layer) repeat-x center top;
}

html,
body {
  border: 0;
  margin: 0;
}

textarea {
  overflow: auto;
}

h1 {
  font-size: 1.375rem;
  font-weight: 700;
  margin-bottom: 0.2em;
}

h2 {
  font-size: 1.1875rem;
  font-weight: 500;
  margin-bottom: 0.2em;
}

h3 {
  font-size: 1rem;
  font-weight: 300;
}

h4 {
  font-size: 0.875rem;
  font-weight: 400;
}

tfoot {
  font-style: italic;
}
tfoot > tr > td {
  background-color: #fff;
  padding: 10px;
}

main hr {
  border: none;
  border-top: 1px solid #ccc;
}
main select {
  font-size: 15px;
}

.flex {
  --gutter: 0;
  display: flex;
}
.flex.-gutter {
  --gutter: 0.625rem;
  gap: var(--gutter);
}
.flex.-moat {
  --gutter: 0.625rem;
  padding: var(--gutter);
}
.flex.-breezy {
  --gutter: 1.5rem;
}
.flex.-stretch {
  justify-content: space-around;
  align-items: stretch;
}
.flex.-centerLeft {
  align-items: center;
  justify-content: flex-start;
}
.flex.-center {
  justify-content: center;
  align-items: center;
}
.flex.-alignCenter {
  justify-content: space-between;
  align-items: center;
}
.flex.-row {
  flex-direction: row;
}
.flex.-end {
  align-items: center;
  justify-content: flex-end;
}
.flex.-alignStart {
  align-items: flex-start;
}
.flex.-alignEnd {
  align-items: flex-end;
}
.flex.-column {
  flex-direction: column;
}
.flex.-inline {
  display: inline-flex;
}
.flex.-wrap {
  flex-wrap: wrap;
}

.flex_item {
  flex-shrink: 1;
  --of: auto;
  --n: auto;
  flex-basis: auto;
  flex-basis: calc(100% * var(--n) / var(--of));
  max-width: calc(100% * var(--n) / var(--of));
}
.flex_item.-ellipse-fix {
  overflow: hidden;
  flex: 0 1 auto;
}
.flex_item.-end {
  margin-left: auto;
}
.flex_item.-grow {
  flex-grow: 1;
}
.flex_item.-grow\:2x {
  flex-grow: 2;
}
.flex_item.-grow\:3x {
  flex-grow: 3;
}
.flex_item.-grow\:4x {
  flex-grow: 4;
}
.flex_item.-grow\:5x {
  flex-grow: 5;
}
.flex_item.-grow\:6x {
  flex-grow: 6;
}
.flex_item.-grow\:7x {
  flex-grow: 7;
}
.flex_item.-grow\:8x {
  flex-grow: 8;
}
.flex_item.-n\:1 {
  --n: 1;
}
.flex_item.-of\:1 {
  --of: 1;
}
.flex_item.-n\:2 {
  --n: 2;
}
.flex_item.-of\:2 {
  --of: 2;
}
.flex_item.-n\:3 {
  --n: 3;
}
.flex_item.-of\:3 {
  --of: 3;
}
.flex_item.-n\:4 {
  --n: 4;
}
.flex_item.-of\:4 {
  --of: 4;
}
.flex_item.-n\:5 {
  --n: 5;
}
.flex_item.-of\:5 {
  --of: 5;
}
.flex_item.-n\:6 {
  --n: 6;
}
.flex_item.-of\:6 {
  --of: 6;
}
.flex_item.-n\:7 {
  --n: 7;
}
.flex_item.-of\:7 {
  --of: 7;
}
.flex_item.-n\:8 {
  --n: 8;
}
.flex_item.-of\:8 {
  --of: 8;
}
.flex_item.-n\:9 {
  --n: 9;
}
.flex_item.-of\:9 {
  --of: 9;
}
.flex_item.-n\:10 {
  --n: 10;
}
.flex_item.-of\:10 {
  --of: 10;
}
.flex_item.-n\:11 {
  --n: 11;
}
.flex_item.-of\:11 {
  --of: 11;
}
.flex_item.-noshrink {
  flex-shrink: 0;
}

.grid {
  --grid-columns: 1;
  --row-gap: 1.25em;
  --column-gap: calc(1.6 * var(--row-gap));
  display: grid;
  grid-template-columns: repeat(var(--grid-columns), 1fr);
}
.grid.-inline {
  display: inline-grid;
}
.grid.-gutter {
  column-gap: var(--column-gap);
  row-gap: var(--row-gap);
}
.grid.-moat {
  padding: var(--row-gap);
}
.grid.-compact {
  --row-gap: 0.75em;
}
.grid.-uniform {
  column-gap: var(--row-gap);
}
.grid.-responsive {
  grid-template-columns: repeat(var(--grid-columns), 1fr);
}
.grid.-responsive > * {
  margin: 0;
}
.grid.-responsive.-columns\:2 {
  --grid-columns: 2;
}
@media screen and (max-width: 902px) {
  .grid.-responsive.-columns\:2 {
    --grid-columns: 1;
  }
}
@media screen and (min-width: 903px) and (max-width: 1353px) {
  .grid.-responsive.-columns\:2 {
    --grid-columns: 2;
  }
}
@media screen and (min-width: 452px) and (max-width: 902px) {
  .grid.-responsive.-columns\:2 {
    --grid-columns: 1;
  }
}
.grid.-responsive.-columns\:3 {
  --grid-columns: 3;
}
@media screen and (max-width: 981px) {
  .grid.-responsive.-columns\:3 {
    --grid-columns: 2;
  }
}
@media screen and (min-width: 982px) and (max-width: 1308px) {
  .grid.-responsive.-columns\:3 {
    --grid-columns: 3;
  }
}
@media screen and (min-width: 655px) and (max-width: 981px) {
  .grid.-responsive.-columns\:3 {
    --grid-columns: 2;
  }
}
.grid.-responsive.-columns\:4 {
  --grid-columns: 4;
}
@media screen and (max-width: 1028px) {
  .grid.-responsive.-columns\:4 {
    --grid-columns: 3;
  }
}
@media screen and (min-width: 1029px) and (max-width: 1285px) {
  .grid.-responsive.-columns\:4 {
    --grid-columns: 4;
  }
}
@media screen and (min-width: 772px) and (max-width: 1028px) {
  .grid.-responsive.-columns\:4 {
    --grid-columns: 3;
  }
}
.grid.-responsive.-columns\:5 {
  --grid-columns: 5;
}
@media screen and (max-width: 848px) {
  .grid.-responsive.-columns\:5 {
    --grid-columns: 3;
  }
}
@media screen and (min-width: 849px) and (max-width: 1060px) {
  .grid.-responsive.-columns\:5 {
    --grid-columns: 4;
  }
}
.grid.-responsive.-columns\:6 {
  --grid-columns: 6;
}
@media screen and (max-width: 900px) {
  .grid.-responsive.-columns\:6 {
    --grid-columns: 4;
  }
}
@media screen and (min-width: 901px) and (max-width: 1080px) {
  .grid.-responsive.-columns\:6 {
    --grid-columns: 5;
  }
}
.grid.-responsive.-columns\:7 {
  --grid-columns: 7;
}
@media screen and (max-width: 780px) {
  .grid.-responsive.-columns\:7 {
    --grid-columns: 4;
  }
}
@media screen and (min-width: 781px) and (max-width: 936px) {
  .grid.-responsive.-columns\:7 {
    --grid-columns: 5;
  }
}
@media screen and (min-width: 937px) and (max-width: 1092px) {
  .grid.-responsive.-columns\:7 {
    --grid-columns: 6;
  }
}
.grid.-responsive.-columns\:8 {
  --grid-columns: 8;
}
@media screen and (max-width: 828px) {
  .grid.-responsive.-columns\:8 {
    --grid-columns: 5;
  }
}
@media screen and (min-width: 829px) and (max-width: 966px) {
  .grid.-responsive.-columns\:8 {
    --grid-columns: 6;
  }
}
@media screen and (min-width: 967px) and (max-width: 1104px) {
  .grid.-responsive.-columns\:8 {
    --grid-columns: 7;
  }
}
.grid.-responsive.-columns\:9 {
  --grid-columns: 9;
}
@media screen and (max-width: 868px) {
  .grid.-responsive.-columns\:9 {
    --grid-columns: 6;
  }
}
@media screen and (min-width: 869px) and (max-width: 992px) {
  .grid.-responsive.-columns\:9 {
    --grid-columns: 7;
  }
}
@media screen and (min-width: 993px) and (max-width: 1116px) {
  .grid.-responsive.-columns\:9 {
    --grid-columns: 8;
  }
}
.grid.-responsive.-columns\:10 {
  --grid-columns: 10;
}
@media screen and (max-width: 784px) {
  .grid.-responsive.-columns\:10 {
    --grid-columns: 6;
  }
}
@media screen and (min-width: 785px) and (max-width: 896px) {
  .grid.-responsive.-columns\:10 {
    --grid-columns: 7;
  }
}
@media screen and (min-width: 897px) and (max-width: 1008px) {
  .grid.-responsive.-columns\:10 {
    --grid-columns: 8;
  }
}
@media screen and (min-width: 1009px) and (max-width: 1120px) {
  .grid.-responsive.-columns\:10 {
    --grid-columns: 9;
  }
}
.grid.-columns\:2 {
  --grid-columns: 2;
}
.grid.-columns\:3 {
  --grid-columns: 3;
}
.grid.-columns\:4 {
  --grid-columns: 4;
}
.grid.-columns\:5 {
  --grid-columns: 5;
}
.grid.-columns\:6 {
  --grid-columns: 6;
}
.grid.-columns\:7 {
  --grid-columns: 7;
}
.grid.-columns\:8 {
  --grid-columns: 8;
}
.grid.-column-auto-flex {
  --grid-columns: 2;
  grid-template-columns: auto 1fr;
}

.grid_cell {
  margin: 0;
}
.grid_cell.-full-width {
  grid-column: 1/calc(1 + var(--grid-columns));
}
.grid_cell.-to-last-col {
  grid-column-end: calc(1 + var(--grid-columns));
}
.grid_cell.-align-center {
  align-self: center;
}
.grid_cell.-align-end {
  align-self: end;
}
.grid_cell.-from-col\:1 {
  grid-column-start: 1;
}
.grid_cell.-through-col\:1 {
  grid-column-end: 2;
}
.grid_cell.-from-col\:2 {
  grid-column-start: 2;
}
.grid_cell.-through-col\:2 {
  grid-column-end: 3;
}
.grid_cell.-from-col\:3 {
  grid-column-start: 3;
}
.grid_cell.-through-col\:3 {
  grid-column-end: 4;
}
.grid_cell.-from-col\:4 {
  grid-column-start: 4;
}
.grid_cell.-through-col\:4 {
  grid-column-end: 5;
}
.grid_cell.-from-col\:5 {
  grid-column-start: 5;
}
.grid_cell.-through-col\:5 {
  grid-column-end: 6;
}
.grid_cell.-from-col\:6 {
  grid-column-start: 6;
}
.grid_cell.-through-col\:6 {
  grid-column-end: 7;
}
.grid_cell.-from-col\:7 {
  grid-column-start: 7;
}
.grid_cell.-through-col\:7 {
  grid-column-end: 8;
}
.grid_cell.-from-col\:8 {
  grid-column-start: 8;
}
.grid_cell.-through-col\:8 {
  grid-column-end: 9;
}
.grid_cell.-from-row\:1 {
  grid-row-start: 1;
}
.grid_cell.-through-row\:1 {
  grid-row-end: 2;
}
.grid_cell.-from-row\:2 {
  grid-row-start: 2;
}
.grid_cell.-through-row\:2 {
  grid-row-end: 3;
}
.grid_cell.-from-row\:3 {
  grid-row-start: 3;
}
.grid_cell.-through-row\:3 {
  grid-row-end: 4;
}
.grid_cell.-from-row\:4 {
  grid-row-start: 4;
}
.grid_cell.-through-row\:4 {
  grid-row-end: 5;
}
.grid_cell.-from-row\:5 {
  grid-row-start: 5;
}
.grid_cell.-through-row\:5 {
  grid-row-end: 6;
}
.grid_cell.-from-row\:6 {
  grid-row-start: 6;
}
.grid_cell.-through-row\:6 {
  grid-row-end: 7;
}
.grid_cell.-from-row\:7 {
  grid-row-start: 7;
}
.grid_cell.-through-row\:7 {
  grid-row-end: 8;
}
.grid_cell.-from-row\:8 {
  grid-row-start: 8;
}
.grid_cell.-through-row\:8 {
  grid-row-end: 9;
}

.headerFlyout_target:focus, .header_button:focus, .imgselect_checkbox:focus, .contextMenu_items:focus, .dictionary_expanderButton:focus, .dictionary_audio:focus, .listbox.-inset:focus, .listbox_options:focus, .articleList_cell.-image:focus, .table_headerCell:focus,
.table.-simple th:focus, .card.-clickable:focus, .card_header.-clickable:focus, .imageBand:focus, .searchLg_tab:focus, .searchLg_content:focus, input[type=radio]:focus, .button:focus, .toggle:focus, .tabset_rocker.-active:focus, .tabset_content:focus, .tabset_tab:focus, .link:focus {
  outline: none;
}
.headerFlyout_target::-moz-focus-inner, .header_button::-moz-focus-inner, .imgselect_checkbox::-moz-focus-inner, .contextMenu_items::-moz-focus-inner, .dictionary_expanderButton::-moz-focus-inner, .dictionary_audio::-moz-focus-inner, .listbox.-inset::-moz-focus-inner, .listbox_options::-moz-focus-inner, .articleList_cell.-image::-moz-focus-inner, .table_headerCell::-moz-focus-inner,
.table.-simple th::-moz-focus-inner, .card.-clickable::-moz-focus-inner, .card_header.-clickable::-moz-focus-inner, .imageBand::-moz-focus-inner, .searchLg_tab::-moz-focus-inner, .searchLg_content::-moz-focus-inner, input[type=radio]::-moz-focus-inner, .button::-moz-focus-inner, .toggle::-moz-focus-inner, .tabset_rocker.-active::-moz-focus-inner, .tabset_content::-moz-focus-inner, .tabset_tab::-moz-focus-inner, .link::-moz-focus-inner {
  border: 0;
}

.book_control, .button.-add, .button.-remove, .button.-cancel, .button.-removeFromList, .button.-addToList, .button.-read, .button.-info, .button.-download, .button.-addToBookBag, .button.-primary, .button.-ar, .button.-checked, input:checked + .button.-withInput {
  color: #fff;
}
.book_control .mycon, .button.-add .mycon, .button.-remove .mycon, .button.-cancel .mycon, .button.-removeFromList .mycon, .button.-addToList .mycon, .button.-read .mycon, .button.-info .mycon, .button.-download .mycon, .button.-addToBookBag .mycon, .button.-primary .mycon, .button.-ar .mycon, .button.-checked .mycon, input:checked + .button.-withInput .mycon {
  background-position-x: right;
  filter: none;
  filter: none;
}
.book_control .projectIcon, .button.-add .projectIcon, .button.-remove .projectIcon, .button.-cancel .projectIcon, .button.-removeFromList .projectIcon, .button.-addToList .projectIcon, .button.-read .projectIcon, .button.-info .projectIcon, .button.-download .projectIcon, .button.-addToBookBag .projectIcon, .button.-primary .projectIcon, .button.-ar .projectIcon, .button.-checked .projectIcon, input:checked + .button.-withInput .projectIcon {
  background-position-x: right;
}

.spinner, .modal_zoom {
  transition: transform 400ms cubic-bezier(0.68, 0, 0.265, 1.55), opacity 300ms;
  perspective: 800px;
}

.spinner, .spinner:not(.-active), .modal_frame.-ready .modal_zoom {
  transform: none;
  opacity: 1;
}

.modal_zoom {
  transform: scale(0);
  opacity: 0;
  pointer-events: none;
}

.mycon {
  --ico-scale: 1;
  background-size: calc(var(--ico-scale) * var(--sp-w)) calc(var(--ico-scale) * var(--sp-h));
  background-position: 0 calc(var(--ico-scale) * var(--ico-y));
  width: calc(var(--ico-scale) * var(--ico-w));
  height: calc(var(--ico-scale) * var(--ico-h));
  display: inline-block;
  background-repeat: no-repeat;
  flex-shrink: 0;
}
.mycon.-dark {
  filter: saturate(0) brightness(0.5);
}
.mycon.-small {
  transform: scale(0.7);
}
.mycon.-color {
  background-position-x: left;
}
.mycon.-white, .mycon_selectable.-selected .mycon {
  background-position-x: right;
  filter: none;
}
.mycon.-embedded {
  filter: drop-shadow(1px 0 0 #fff) drop-shadow(-1px 0 0 #fff) drop-shadow(0 -1px 0 #fff) drop-shadow(0 1px 0 #fff);
}

.faces {
  --sp-h: 300px;
  --sp-w: 120px;
  background-image: url("https://assets.myon.com/img/dist/faces/faces--mfi3ri.svg?c=652b091167");
}

.faces.-interest-1 {
  --ico-y: 0;
  --ico-w: 50px;
  --ico-h: 50px;
}

.faces.-interest-2 {
  --ico-y: -60px;
  --ico-w: 50px;
  --ico-h: 50px;
}

.faces.-interest-3 {
  --ico-y: -120px;
  --ico-w: 50px;
  --ico-h: 50px;
}

.faces.-interest-4 {
  --ico-y: -180px;
  --ico-w: 50px;
  --ico-h: 50px;
}

.faces.-interest-5 {
  --ico-y: -240px;
  --ico-w: 50px;
  --ico-h: 50px;
}

.faces {
  --ico-scale: 1;
  background-size: calc(var(--ico-scale) * var(--sp-w)) calc(var(--ico-scale) * var(--sp-h));
  background-position: 0 calc(var(--ico-scale) * var(--ico-y));
  width: calc(var(--ico-scale) * var(--ico-w));
  height: calc(var(--ico-scale) * var(--ico-h));
  margin-top: 5px;
  margin-left: 3px;
  display: inline-block;
}

.fIcon {
  --sp-h: 2646px;
  --sp-w: 488px;
  background-image: url("https://assets.myon.com/img/dist/filter/filter-5ibt5t.svg?c=91684c7f41");
}

.fIcon.-atos {
  --ico-y: 0;
  --ico-w: 40px;
  --ico-h: 40px;
}

.fIcon.-audio {
  --ico-y: -50px;
  --ico-w: 40px;
  --ico-h: 40px;
}

.fIcon.-bookCategory {
  --ico-y: -100px;
  --ico-w: 45px;
  --ico-h: 40px;
}

.fIcon.-fiction {
  --ico-y: -150px;
  --ico-w: 40px;
  --ico-h: 40px;
}

.fIcon.-gradeLevel {
  --ico-y: -200px;
  --ico-w: 45px;
  --ico-h: 40px;
}

.fIcon.-guidedReading {
  --ico-y: -250px;
  --ico-w: 45px;
  --ico-h: 40px;
}

.fIcon.-language {
  --ico-y: -300px;
  --ico-w: 45px;
  --ico-h: 40px;
}

.fIcon.-length {
  --ico-y: -350px;
  --ico-w: 37px;
  --ico-h: 32px;
}

.fIcon.-lexile {
  --ico-y: -392px;
  --ico-w: 45px;
  --ico-h: 40px;
}

.fIcon.-ll-atos {
  --ico-y: -442px;
  --ico-w: 71px;
  --ico-h: 71px;
}

.fIcon.-ll-audio-no {
  --ico-y: -523px;
  --ico-w: 75px;
  --ico-h: 75px;
}

.fIcon.-ll-audio-yes {
  --ico-y: -608px;
  --ico-w: 75px;
  --ico-h: 75px;
}

.fIcon.-ll-filter {
  --ico-y: -693px;
  --ico-w: 78px;
  --ico-h: 65px;
}

.fIcon.-ll-fnf-fiction {
  --ico-y: -768px;
  --ico-w: 234px;
  --ico-h: 182px;
}

.fIcon.-ll-fnf-nonfiction {
  --ico-y: -960px;
  --ico-w: 234px;
  --ico-h: 182px;
}

.fIcon.-ll-fnf {
  --ico-y: -1152px;
  --ico-w: 78px;
  --ico-h: 60px;
}

.fIcon.-ll-gradeLevel {
  --ico-y: -1222px;
  --ico-w: 78px;
  --ico-h: 65px;
}

.fIcon.-ll-guidedReading {
  --ico-y: -1297px;
  --ico-w: 84px;
  --ico-h: 44px;
}

.fIcon.-ll-lang {
  --ico-y: -1351px;
  --ico-w: 93px;
  --ico-h: 49px;
}

.fIcon.-ll-length-epic {
  --ico-y: -1410px;
  --ico-w: 134px;
  --ico-h: 116px;
}

.fIcon.-ll-length-long {
  --ico-y: -1536px;
  --ico-w: 92px;
  --ico-h: 80px;
}

.fIcon.-ll-length-medium {
  --ico-y: -1626px;
  --ico-w: 69px;
  --ico-h: 60px;
}

.fIcon.-ll-length-short {
  --ico-y: -1696px;
  --ico-w: 40px;
  --ico-h: 34px;
}

.fIcon.-ll-lexile {
  --ico-y: -1740px;
  --ico-w: 52px;
  --ico-h: 52px;
}

.fIcon.-ll-search-author {
  --ico-y: -1802px;
  --ico-w: 88px;
  --ico-h: 95px;
}

.fIcon.-ll-search-descr {
  --ico-y: -1907px;
  --ico-w: 164px;
  --ico-h: 95px;
}

.fIcon.-ll-search-publisher {
  --ico-y: -2012px;
  --ico-w: 88px;
  --ico-h: 95px;
}

.fIcon.-ll-search-series {
  --ico-y: -2117px;
  --ico-w: 140px;
  --ico-h: 97px;
}

.fIcon.-ll-search-title {
  --ico-y: -2224px;
  --ico-w: 88px;
  --ico-h: 95px;
}

.fIcon.-ll-storyLength {
  --ico-y: -2329px;
  --ico-w: 78px;
  --ico-h: 52px;
}

.fIcon.-ll-you-are-here {
  --ico-y: -2391px;
  --ico-w: 41px;
  --ico-h: 45px;
}

.fIcon.-scope {
  --ico-y: -2446px;
  --ico-w: 45px;
  --ico-h: 40px;
}

.fIcon.-search {
  --ico-y: -2496px;
  --ico-w: 40px;
  --ico-h: 40px;
}

.fIcon.-storyLength {
  --ico-y: -2546px;
  --ico-w: 45px;
  --ico-h: 40px;
}

.fIcon.-taskType {
  --ico-y: -2596px;
  --ico-w: 45px;
  --ico-h: 40px;
}

.fIcon {
  --ico-scale: 1;
  background-size: calc(var(--ico-scale) * var(--sp-w)) calc(var(--ico-scale) * var(--sp-h));
  background-position: 0 calc(var(--ico-scale) * var(--ico-y));
  width: calc(var(--ico-scale) * var(--ico-w));
  height: calc(var(--ico-scale) * var(--ico-h));
  background-position-x: right;
  display: inline-block;
}
.fIcon.-light {
  background-position-x: left;
}

.hIcon {
  --sp-h: 963px;
  --sp-w: 120px;
  background-image: url(https://assets.myon.com/img/dist/hIcon/hIcon-w72y5g.svg?c=1765a68430);
}

.hIcon.-a-to-z {
  --ico-y: 0;
  --ico-w: 35px;
  --ico-h: 30px;
}

.hIcon.-activity {
  --ico-y: -40px;
  --ico-w: 24px;
  --ico-h: 27px;
}

.hIcon.-admin {
  --ico-y: -77px;
  --ico-w: 32px;
  --ico-h: 23px;
}

.hIcon.-avatar {
  --ico-y: -110px;
  --ico-w: 24px;
  --ico-h: 26px;
}

.hIcon.-browse {
  --ico-y: -146px;
  --ico-w: 36px;
  --ico-h: 16px;
}

.hIcon.-buildings {
  --ico-y: -172px;
  --ico-w: 26px;
  --ico-h: 26px;
}

.hIcon.-interests {
  --ico-y: -208px;
  --ico-w: 38px;
  --ico-h: 15px;
}

.hIcon.-journal {
  --ico-y: -233px;
  --ico-w: 27px;
  --ico-h: 29px;
}

.hIcon.-library {
  --ico-y: -272px;
  --ico-w: 21px;
  --ico-h: 28px;
}

.hIcon.-logout-subnav {
  --ico-y: -310px;
  --ico-w: 24px;
  --ico-h: 18px;
}

.hIcon.-logout {
  --ico-y: -338px;
  --ico-w: 24px;
  --ico-h: 18px;
}

.hIcon.-my-list {
  --ico-y: -366px;
  --ico-w: 26px;
  --ico-h: 24px;
}

.hIcon.-news {
  --ico-y: -400px;
  --ico-w: 30px;
  --ico-h: 24px;
}

.hIcon.-pin {
  --ico-y: -434px;
  --ico-w: 28px;
  --ico-h: 35px;
}

.hIcon.-portfolio {
  --ico-y: -479px;
  --ico-w: 30px;
  --ico-h: 23px;
}

.hIcon.-profile {
  --ico-y: -512px;
  --ico-w: 32px;
  --ico-h: 23px;
}

.hIcon.-progress {
  --ico-y: -545px;
  --ico-w: 38px;
  --ico-h: 21px;
}

.hIcon.-projects {
  --ico-y: -576px;
  --ico-w: 30px;
  --ico-h: 26px;
}

.hIcon.-recommended {
  --ico-y: -612px;
  --ico-w: 21px;
  --ico-h: 26px;
}

.hIcon.-recordings {
  --ico-y: -648px;
  --ico-w: 27px;
  --ico-h: 26px;
}

.hIcon.-ren-subnav {
  --ico-y: -684px;
  --ico-w: 17px;
  --ico-h: 20px;
}

.hIcon.-reports {
  --ico-y: -714px;
  --ico-w: 33px;
  --ico-h: 24px;
}

.hIcon.-reviews {
  --ico-y: -748px;
  --ico-w: 25px;
  --ico-h: 25px;
}

.hIcon.-rosters {
  --ico-y: -783px;
  --ico-w: 29px;
  --ico-h: 27px;
}

.hIcon.-search {
  --ico-y: -820px;
  --ico-w: 25px;
  --ico-h: 29px;
}

.hIcon.-standards {
  --ico-y: -859px;
  --ico-w: 27px;
  --ico-h: 26px;
}

.hIcon.-tc-bookshelf {
  --ico-y: -895px;
  --ico-w: 21px;
  --ico-h: 30px;
}

.hIcon.-users {
  --ico-y: -935px;
  --ico-w: 50px;
  --ico-h: 18px;
}

.hIcon {
  --ico-scale: 1;
  background-size: calc(var(--ico-scale) * var(--sp-w)) calc(var(--ico-scale) * var(--sp-h));
  background-position: 0 calc(var(--ico-scale) * var(--ico-y));
  width: calc(var(--ico-scale) * var(--ico-w));
  height: calc(var(--ico-scale) * var(--ico-h));
  display: block;
  flex-shrink: 0;
}
.hIcon.-white {
  background-position-x: right;
}
.hIcon.-halfSize {
  transform: scale(0.5);
}

.gIcon {
  --sp-h: 904px;
  --sp-w: 64px;
  background-image: url("https://assets.myon.com/img/dist/admin/admin--9wa59c.svg?c=d348ce4ef7");
}

.gIcon.-audio-off {
  --ico-y: 0;
  --ico-w: 54px;
  --ico-h: 30px;
}

.gIcon.-audio-on {
  --ico-y: -40px;
  --ico-w: 54px;
  --ico-h: 30px;
}

.gIcon.-audio-weekend {
  --ico-y: -80px;
  --ico-w: 54px;
  --ico-h: 30px;
}

.gIcon.-books-finished-gry {
  --ico-y: -120px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-books-finished {
  --ico-y: -160px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-books-read-gry {
  --ico-y: -200px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-building-count-gry {
  --ico-y: -240px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-calendar-gry {
  --ico-y: -280px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-close-tag {
  --ico-y: -320px;
  --ico-w: 22px;
  --ico-h: 22px;
}

.gIcon.-lexile-growth-gry {
  --ico-y: -352px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-pages-read-gry {
  --ico-y: -392px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-pages-read {
  --ico-y: -432px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-student-gry {
  --ico-y: -472px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-student {
  --ico-y: -512px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-tag-gray {
  --ico-y: -552px;
  --ico-w: 22px;
  --ico-h: 10px;
}

.gIcon.-task-drag {
  --ico-y: -572px;
  --ico-w: 20px;
  --ico-h: 23px;
}

.gIcon.-teacher-gry {
  --ico-y: -605px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-time-gry {
  --ico-y: -645px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon.-time {
  --ico-y: -685px;
  --ico-w: 30px;
  --ico-h: 31px;
}

.gIcon.-value-decreased-sm {
  --ico-y: -726px;
  --ico-w: 16px;
  --ico-h: 16px;
}

.gIcon.-value-decreased {
  --ico-y: -752px;
  --ico-w: 20px;
  --ico-h: 20px;
}

.gIcon.-value-increased-sm {
  --ico-y: -782px;
  --ico-w: 16px;
  --ico-h: 16px;
}

.gIcon.-value-increased {
  --ico-y: -808px;
  --ico-w: 20px;
  --ico-h: 20px;
}

.gIcon.-value-unchanged-sm {
  --ico-y: -838px;
  --ico-w: 16px;
  --ico-h: 16px;
}

.gIcon.-value-unchanged {
  --ico-y: -864px;
  --ico-w: 30px;
  --ico-h: 30px;
}

.gIcon {
  --ico-scale: 1;
  background-size: calc(var(--ico-scale) * var(--sp-w)) calc(var(--ico-scale) * var(--sp-h));
  background-position: 0 calc(var(--ico-scale) * var(--ico-y));
  width: calc(var(--ico-scale) * var(--ico-w));
  height: calc(var(--ico-scale) * var(--ico-h));
  display: inline-block;
}

.projectIcon {
  --sp-h: 2278px;
  --sp-w: 172px;
  background-image: url("https://assets.myon.com/img/dist/projectIcon/projectIcon-pnzub5.svg?c=9056d6373c");
}

.projectIcon.-activity-custom, .projectIcon.-task\:all-purpose-task {
  --ico-y: 0;
  --ico-w: 29px;
  --ico-h: 29px;
}

.projectIcon.-activity-custom-none, .projectIcon.-task\:all-purpose-task.-status\:0 {
  --ico-y: -39px;
  --ico-w: 29px;
  --ico-h: 29px;
}

.projectIcon.-activity-custom-some, .projectIcon.-task\:all-purpose-task.-status\:1 {
  --ico-y: -78px;
  --ico-w: 29px;
  --ico-h: 29px;
}

.projectIcon.-activity-custom-done, .projectIcon.-task\:all-purpose-task.-status\:2 {
  --ico-y: -117px;
  --ico-w: 29px;
  --ico-h: 29px;
}

.projectIcon.-activity-done {
  --ico-y: -156px;
  --ico-w: 40px;
  --ico-h: 13px;
}

.projectIcon.-activity-graphic-org, .projectIcon.-task\:graphic-organizer-task {
  --ico-y: -179px;
  --ico-w: 38px;
  --ico-h: 35px;
}

.projectIcon.-activity-graphic-org-none, .projectIcon.-task\:graphic-organizer-task.-status\:0 {
  --ico-y: -224px;
  --ico-w: 38px;
  --ico-h: 35px;
}

.projectIcon.-activity-graphic-org-some, .projectIcon.-task\:graphic-organizer-task.-status\:1 {
  --ico-y: -269px;
  --ico-w: 38px;
  --ico-h: 35px;
}

.projectIcon.-activity-graphic-org-done, .projectIcon.-task\:graphic-organizer-task.-status\:2 {
  --ico-y: -314px;
  --ico-w: 38px;
  --ico-h: 35px;
}

.projectIcon.-activity-lexile-exam, .projectIcon.-task\:lexile-exam-task {
  --ico-y: -359px;
  --ico-w: 35px;
  --ico-h: 27px;
}

.projectIcon.-activity-lexile-exam-none, .projectIcon.-task\:lexile-exam-task.-status\:0 {
  --ico-y: -396px;
  --ico-w: 35px;
  --ico-h: 27px;
}

.projectIcon.-activity-lexile-exam-some, .projectIcon.-task\:lexile-exam-task.-status\:1 {
  --ico-y: -433px;
  --ico-w: 35px;
  --ico-h: 27px;
}

.projectIcon.-activity-lexile-exam-done, .projectIcon.-task\:lexile-exam-task.-status\:2 {
  --ico-y: -470px;
  --ico-w: 35px;
  --ico-h: 27px;
}

.projectIcon.-activity-news, .projectIcon.-task\:news-task {
  --ico-y: -507px;
  --ico-w: 32px;
  --ico-h: 27px;
}

.projectIcon.-activity-news-none, .projectIcon.-task\:news-task.-status\:0 {
  --ico-y: -544px;
  --ico-w: 32px;
  --ico-h: 27px;
}

.projectIcon.-activity-news-some, .projectIcon.-task\:news-task.-status\:1 {
  --ico-y: -581px;
  --ico-w: 32px;
  --ico-h: 27px;
}

.projectIcon.-activity-news-done, .projectIcon.-task\:news-task.-status\:2 {
  --ico-y: -618px;
  --ico-w: 32px;
  --ico-h: 27px;
}

.projectIcon.-activity-none {
  --ico-y: -655px;
  --ico-w: 40px;
  --ico-h: 13px;
}

.projectIcon.-activity-oral-fluency, .projectIcon.-task\:oral-fluency-task {
  --ico-y: -678px;
  --ico-w: 31px;
  --ico-h: 28px;
}

.projectIcon.-activity-oral-fluency-none, .projectIcon.-task\:oral-fluency-task.-status\:0 {
  --ico-y: -716px;
  --ico-w: 31px;
  --ico-h: 28px;
}

.projectIcon.-activity-oral-fluency-some, .projectIcon.-task\:oral-fluency-task.-status\:1 {
  --ico-y: -754px;
  --ico-w: 31px;
  --ico-h: 28px;
}

.projectIcon.-activity-oral-fluency-done, .projectIcon.-task\:oral-fluency-task.-status\:2 {
  --ico-y: -792px;
  --ico-w: 31px;
  --ico-h: 28px;
}

.projectIcon.-activity-oral-response, .projectIcon.-task\:oral-response-task {
  --ico-y: -830px;
  --ico-w: 30px;
  --ico-h: 31px;
}

.projectIcon.-activity-oral-response-none, .projectIcon.-task\:oral-response-task.-status\:0 {
  --ico-y: -871px;
  --ico-w: 30px;
  --ico-h: 31px;
}

.projectIcon.-activity-oral-response-some, .projectIcon.-task\:oral-response-task.-status\:1 {
  --ico-y: -912px;
  --ico-w: 30px;
  --ico-h: 31px;
}

.projectIcon.-activity-oral-response-done, .projectIcon.-task\:oral-response-task.-status\:2 {
  --ico-y: -953px;
  --ico-w: 30px;
  --ico-h: 31px;
}

.projectIcon.-activity-reading, .projectIcon.-task\:reading-task {
  --ico-y: -994px;
  --ico-w: 28px;
  --ico-h: 26px;
}

.projectIcon.-activity-reading-none, .projectIcon.-task\:reading-task.-status\:0 {
  --ico-y: -1030px;
  --ico-w: 28px;
  --ico-h: 26px;
}

.projectIcon.-activity-reading-some, .projectIcon.-task\:reading-task.-status\:1 {
  --ico-y: -1066px;
  --ico-w: 28px;
  --ico-h: 26px;
}

.projectIcon.-activity-reading-done, .projectIcon.-task\:reading-task.-status\:2 {
  --ico-y: -1102px;
  --ico-w: 28px;
  --ico-h: 26px;
}

.projectIcon.-activity-some {
  --ico-y: -1138px;
  --ico-w: 40px;
  --ico-h: 13px;
}

.projectIcon.-activity-writing, .projectIcon.-task\:writing-task {
  --ico-y: -1161px;
  --ico-w: 30px;
  --ico-h: 36px;
}

.projectIcon.-activity-writing-none, .projectIcon.-task\:writing-task.-status\:0 {
  --ico-y: -1207px;
  --ico-w: 30px;
  --ico-h: 36px;
}

.projectIcon.-activity-writing-some, .projectIcon.-task\:writing-task.-status\:1 {
  --ico-y: -1253px;
  --ico-w: 30px;
  --ico-h: 36px;
}

.projectIcon.-activity-writing-done, .projectIcon.-task\:writing-task.-status\:2 {
  --ico-y: -1299px;
  --ico-w: 30px;
  --ico-h: 36px;
}

.projectIcon.-archive {
  --ico-y: -1345px;
  --ico-w: 16px;
  --ico-h: 16px;
}

.projectIcon.-community-assignments {
  --ico-y: -1371px;
  --ico-w: 20px;
  --ico-h: 18px;
}

.projectIcon.-completion {
  --ico-y: -1399px;
  --ico-w: 12px;
  --ico-h: 15px;
}

.projectIcon.-create-new-assignment {
  --ico-y: -1424px;
  --ico-w: 76px;
  --ico-h: 67px;
}

.projectIcon.-dictionary {
  --ico-y: -1501px;
  --ico-w: 32px;
  --ico-h: 23px;
}

.projectIcon.-drag {
  --ico-y: -1534px;
  --ico-w: 20px;
  --ico-h: 20px;
}

.projectIcon.-duplicate {
  --ico-y: -1564px;
  --ico-w: 16px;
  --ico-h: 16px;
}

.projectIcon.-info {
  --ico-y: -1590px;
  --ico-w: 12px;
  --ico-h: 12px;
}

.projectIcon.-journal {
  --ico-y: -1612px;
  --ico-w: 23px;
  --ico-h: 26px;
}

.projectIcon.-like {
  --ico-y: -1648px;
  --ico-w: 16px;
  --ico-h: 15px;
}

.projectIcon.-liked {
  --ico-y: -1673px;
  --ico-w: 16px;
  --ico-h: 15px;
}

.projectIcon.-link {
  --ico-y: -1698px;
  --ico-w: 16px;
  --ico-h: 16px;
}

.projectIcon.-listen-user {
  --ico-y: -1724px;
  --ico-w: 35px;
  --ico-h: 26px;
}

.projectIcon.-more {
  --ico-y: -1760px;
  --ico-w: 24px;
  --ico-h: 24px;
}

.projectIcon.-my-assignments {
  --ico-y: -1794px;
  --ico-w: 20px;
  --ico-h: 17px;
}

.projectIcon.-pause {
  --ico-y: -1821px;
  --ico-w: 15px;
  --ico-h: 21px;
}

.projectIcon.-peer-review {
  --ico-y: -1852px;
  --ico-w: 31px;
  --ico-h: 37px;
}

.projectIcon.-play {
  --ico-y: -1899px;
  --ico-w: 15px;
  --ico-h: 21px;
}

.projectIcon.-preview {
  --ico-y: -1930px;
  --ico-w: 22px;
  --ico-h: 16px;
}

.projectIcon.-record {
  --ico-y: -1956px;
  --ico-w: 16px;
  --ico-h: 27px;
}

.projectIcon.-review {
  --ico-y: -1993px;
  --ico-w: 38px;
  --ico-h: 25px;
}

.projectIcon.-save {
  --ico-y: -2028px;
  --ico-w: 32px;
  --ico-h: 30px;
}

.projectIcon.-settings {
  --ico-y: -2068px;
  --ico-w: 15px;
  --ico-h: 15px;
}

.projectIcon.-sort-asc {
  --ico-y: -2093px;
  --ico-w: 21px;
  --ico-h: 18px;
}

.projectIcon.-sort-desc {
  --ico-y: -2121px;
  --ico-w: 22px;
  --ico-h: 18px;
}

.projectIcon.-teacher-review {
  --ico-y: -2149px;
  --ico-w: 31px;
  --ico-h: 37px;
}

.projectIcon.-trash-red {
  --ico-y: -2196px;
  --ico-w: 13px;
  --ico-h: 16px;
}

.projectIcon.-turned-in-white {
  --ico-y: -2222px;
  --ico-w: 19px;
  --ico-h: 18px;
}

.projectIcon.-turned-in {
  --ico-y: -2250px;
  --ico-w: 19px;
  --ico-h: 18px;
}

.projectIcon {
  --ico-scale: 1;
  background-size: calc(var(--ico-scale) * var(--sp-w)) calc(var(--ico-scale) * var(--sp-h));
  background-position: 0 calc(var(--ico-scale) * var(--ico-y));
  width: calc(var(--ico-scale) * var(--ico-w));
  height: calc(var(--ico-scale) * var(--ico-h));
  display: inline-block;
  flex-shrink: 0;
}
.projectIcon.-white {
  background-position-x: right;
}
.projectIcon.-halfSize {
  --ico-scale: 0.5;
}
.projectIcon_taskWrapper {
  background-color: #fff;
  border: 2px solid #3c86ea;
  border-radius: 10px;
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.projectIcon_taskWrapper.-small {
  width: 30px;
  height: 30px;
}

.flash_message {
  padding: 10px;
  text-align: center;
  margin: 5px 0;
  border-radius: 3px;
  overflow-wrap: break-word;
}
.flash_message.-info {
  background: #8c8dce;
  border: 1px solid #5658b7;
  color: #13142e;
}
.flash_message.-debug {
  background: #5658b7;
  border: 1px solid #5658b7;
  color: white;
}
.flash_message.-notice {
  background: #aedf69;
  border: 1px solid #8cd02c;
  color: #1b2808;
}
.flash_message.-warning {
  background: #ffc44d;
  border: 1px solid #fa0;
  color: #332200;
}
.flash_message.-error {
  background: #db7070;
  border: 1px solid #c33;
  color: #290a0a;
}
.flash_message.-critical {
  background: #c33;
  border: 1px solid #c33;
  color: white;
}
.flash_message.-emergency {
  color: #fff;
  border: 1px solid #333;
  background: #c70000 url("https://assets.myon.com/img/3/emergency_stripe.png?c=32c75b6120") repeat;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.5);
}
.flash_message.-alert {
  background: #555;
  color: #f33;
  border: 1px solid #f33;
}

.modal,
.modal_frame,
.modal_shade,
.modal_zoom {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.modal {
  z-index: -1;
  overflow: hidden;
}
.modal.-active {
  z-index: 1000;
}
.modal.-emphasize .modal_frame:last-child .modal_contents {
  animation: modal-content-headshake 1s ease-in-out;
}

.modal_contents {
  transition: transform 150ms;
  pointer-events: auto;
  width: 100%;
  max-width: calc(100vw - 20px);
  position: relative;
  margin-right: auto;
  margin-left: auto;
}

.modal_frame {
  transition: opacity 700ms, transform 700ms, margin-top 700ms;
  transform: perspective(900px) scale(0.8) translateX(-200vw) rotateY(10deg);
  z-index: 1;
}
.modal_frame:nth-last-child(-n+2) {
  transform: perspective(900px) translateX(-50vw) translateZ(-200px) rotateY(10deg);
}
.modal_frame:last-child {
  transform: none;
  z-index: 3;
  perspective: 900px;
}
.modal_frame:last-child.-ready {
  animation: modal-frame-focus 700ms forwards;
}

@keyframes modal-frame-focus {
  99% {
    overflow: hidden;
  }
  100% {
    overflow: auto;
  }
}
.modal_shade {
  transition: z-index 300ms, opacity 300ms, background-color 300ms;
  background-color: rgba(39, 51, 62, 0.4);
  opacity: 0;
  z-index: 2;
}
.modal.-active .modal_shade {
  opacity: 1;
}

@keyframes modal-content-headshake {
  0% {
    transform: translateX(0);
  }
  6.5% {
    transform: translateX(-6px) rotateY(-9deg);
  }
  16.5% {
    transform: translateX(5px) rotateY(7deg);
  }
  31.5% {
    transform: translateX(-3px) rotateY(-5deg);
  }
  43.5% {
    transform: translateX(2px) rotateY(3deg);
  }
  50% {
    transform: translateX(0);
  }
}
.sidesheet,
.sidesheet_contentContainer,
.sidesheet::before {
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}

.sidesheet {
  overflow: hidden;
  z-index: 997;
  position: fixed;
}
.sidesheet::before {
  transition: opacity 300ms;
  content: "";
  display: block;
  position: absolute;
  background-color: rgba(39, 51, 62, 0.4);
  opacity: 0;
  z-index: 2;
}
.sidesheet:not(.-visible) {
  pointer-events: none;
}
.sidesheet.-visible::before {
  opacity: 1;
}

.sidesheet_contentContainer {
  transition: transform 300ms, opacity 300ms;
  left: auto;
  width: auto;
  max-width: calc(100vw - 100px);
  position: fixed;
  z-index: 3;
  background-color: #fff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5), 0 3px 0 0 #b2d0f5;
  opacity: 0;
  transform: translateX(200px);
}
.sidesheet.-medium .sidesheet_contentContainer {
  max-width: min(100vw - 200px, 750px);
}
.sidesheet.-large .sidesheet_contentContainer {
  max-width: min(100vw - 200px, 750px);
  width: 100%;
}
.sidesheet.-small .sidesheet_contentContainer {
  max-width: 400px;
}
.sidesheet.-visible .sidesheet_contentContainer {
  opacity: 1;
  transform: none;
}

.sidesheet_content {
  display: flex;
  flex-direction: column;
  align-content: stretch;
  height: 100%;
  max-height: 100vh;
}

.sidesheet_body {
  overflow-y: auto;
  position: relative;
  z-index: 1;
}
.sidesheet_body.-hasSidebar {
  display: flex;
  flex-grow: 1;
  flex-direction: row;
}
@media screen and (max-width: 1050px) {
  .sidesheet_body.-hasSidebar {
    display: block;
  }
}

.sidesheet_header {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 10px 40px 10px 10px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
  position: relative;
  z-index: 2;
}

.sidesheet_title {
  margin-left: 10px;
  margin-right: 10px;
  font-size: 1.5em;
  font-weight: bold;
  flex-grow: 1;
}

.device:not(.-keyboard) .device_keyboardOrSr {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  opacity: 0;
  pointer-events: none;
}

.device.-mouse *:focus {
  outline: none !important;
  outline-width: 0 !important;
}

.ribbon {
  --ribbon-color: #fa0;
  --ribbon-bend-width: 5px;
  --ribbon-margin: var(--ribbon-bend-width);
  background-color: var(--ribbon-color);
  position: relative;
  left: calc(-1 * var(--ribbon-margin));
  padding: 0 0 0 var(--ribbon-margin);
  display: flex;
  align-items: center;
  filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.2));
  border-top-left-radius: 4px;
}

.ribbon::before,
.ribbon::after {
  position: absolute;
  display: block;
  content: "";
}

.ribbon::before {
  top: 100%;
  left: 0;
  border-style: solid;
  border-width: var(--ribbon-bend-width);
  border-color: var(--ribbon-color) var(--ribbon-color) transparent transparent;
  filter: brightness(0.7);
}

.ribbon.-right::before {
  left: auto;
  right: 0;
  border-color: var(--ribbon-color) transparent transparent var(--ribbon-color);
}

.ribbon::after {
  background-color: var(--ribbon-color);
  left: 100%;
  top: 0;
  height: 100%;
  width: 20px;
  clip-path: polygon(100% 0%, 0 100%, 0 0);
}

.ribbon.-right::after {
  left: auto;
  right: 100%;
  clip-path: polygon(0 0%, 100% 100%, 100% 0);
}

.ribbon.-forked::after {
  clip-path: polygon(100% 0%, 0% 50%, 100% 100%, 0 100%, 0 0);
}

.ribbon.-right.-forked::after {
  clip-path: polygon(0% 0%, 100% 50%, 0% 100%, 100% 100%, 100% 0);
}

.ribbon.-right {
  left: auto;
  border-radius: 0 4px 0 0;
  right: calc(-1 * var(--ribbon-margin));
  padding: 0 var(--ribbon-margin) 0 0;
  text-align: right;
}

.toast {
  pointer-events: none;
  position: relative;
  height: 0;
}
.toast.-floating {
  position: fixed;
  top: 15px;
  left: 0;
  right: 0;
  z-index: 10000;
}

.toast_itemList {
  list-style: none;
  padding: 0;
  max-width: 600px;
  width: 100%;
  margin: 0 auto;
}

.toast_icon {
  display: flex;
}

.toast_icon + .toast_icon,
.toast_icon + .toast_message,
.toast_message + .toast_icon,
.toast_message + .toast_message {
  margin-left: 10px;
}

.toast_item {
  pointer-events: auto;
  transition: opacity 300ms, max-height 300ms, transform 400ms cubic-bezier(0.68, 0, 0.265, 1.55);
  transform-origin: top center;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.1), 0 5px 10px -2px rgba(0, 0, 0, 0.8);
  line-height: 1.6em;
  color: #fff;
  background-color: #118929;
  border-radius: 0.5em;
  padding: 0.5em;
  margin-bottom: 0.7em;
  display: flex;
  align-items: center;
  text-align: center;
  flex-direction: row;
  max-height: 150px;
  opacity: 1;
  transform: none;
  flex-grow: 1;
}
.toast.-floating .toast_item {
  font-size: 1.1875rem;
}
.toast_item.-adding {
  max-height: 0;
  opacity: 0;
  transform: scale(0.1);
  margin: 0;
  padding: 0 10px;
}
.toast_item.-removing {
  opacity: 0;
}
.toast_item.-inline {
  position: absolute;
  white-space: nowrap;
  padding: 5px 10px;
  right: 0;
  bottom: 100%;
  animation: fade-up 300ms 1;
  transform-origin: bottom;
}
.toast_item.-inline::after {
  position: absolute;
  top: 100%;
  right: 20px;
  border: 6px solid transparent;
  border-top-color: #118929;
  display: block;
  content: "";
}

@keyframes fade-up {
  from {
    opacity: 0;
    transform: translateY(30px) scale(0.8);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.toast_container {
  position: relative;
  width: 0;
  height: 100%;
}

.multipage_pages, .bookBundle_list, .bookBag_bookList, .bookBrowser_books, .book_cell.-details, .dictionary_entries {
  list-style: none;
  padding: 0;
  margin: 0;
}

.dictionary_expanderButton, .flyoutButton, .bookModal_lowButton, .tabset_rocker, .link {
  padding: 0;
  border: none;
  font: inherit;
  background-color: transparent;
  cursor: pointer;
}

.link {
  --gutter: 1rem;
  border-radius: 10px;
  color: #186ed8;
  font-weight: normal;
  text-decoration: none;
  cursor: pointer;
}
.link.-centered {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.link.-inline {
  text-decoration: underline;
}
.link.-user {
  max-width: 250px;
}
.link.-red {
  color: #dd2929;
}
.link.-dim {
  opacity: 0.3;
}
.link.-external::after {
  content: "";
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2214%22%20viewBox%3D%220%200%2016%2014%22%3E%3Cpath%20fill%3D%22%23186ed8%22%20fill-rule%3D%22evenodd%22%20d%3D%22M16%204V.6c0-.3-.3-.6-.7-.6h-3.7c-.7%200-1%20.7-.5%201l1%201-5.9%205.3c-.3.3-.3.7%200%201l.7.5c.2.3.7.3%201%200l5.9-5.3%201%201c.4.3%201.2%200%201.2-.5zm-2.8%204.5l.6-.5a.7.7%200%20011.2.5v4.1c0%20.8-.6%201.4-1.4%201.4H1.4C.6%2014%200%2013.4%200%2012.6V2.4C0%201.6.6%201%201.4%201h6.5c.6%200%20.9.8.5%201.2l-.5.5-.4.2H2v9.2h11V9c0-.2%200-.4.2-.5z%22%2F%3E%3C%2Fsvg%3E);
  width: 16px;
  height: 14px;
  display: inline-block;
  margin-left: 5px;
}
.link.-footer {
  text-shadow: none;
  color: #fff;
  text-decoration: underline;
  padding: 0 5px;
  font-size: 0.75rem;
}
.link.-footer:hover, .link.-footer:focus {
  text-decoration: none;
  border-radius: 10px;
  color: #186ed8;
  background: #fff;
}
.link:hover, .link:focus {
  text-decoration: none;
  background-color: rgba(24, 110, 216, 0.1);
}
.device.-keyboard .link:focus, .device.-keyboard .link.-focus {
  text-shadow: none;
  background-color: #186ed8;
  box-shadow: 0 0 0 2px #186ed8, 0 0 0 3px #fff, 0 0 0 5px #186ed8, inset 0 0 0 1px #186ed8;
  color: #fff;
}
.device.-keyboard .link:focus .mycon, .device.-keyboard .link.-focus .mycon {
  background-position-x: right;
  filter: none;
  filter: none;
}
.link.-decorative {
  cursor: auto;
  background: none;
}
.link.-decorative:hover {
  text-decoration: none;
}

.link_icon {
  margin-right: 5px;
  margin-left: 5px;
}

.tree {
  list-style: none;
  font-size: 0.875rem;
  padding: 0;
  cursor: default;
}

.tree_node {
  border-top: 1px solid #ddd;
}
.tree_node.-control {
  border: 1px solid #e0e0e2;
  margin-bottom: 1em;
}
.tree_node.-control > .tree_item {
  background: #f2f5fb;
  padding: 0.75em 0.5em;
  margin: 0;
}
.tree_node.-control > .tree_children {
  padding: 0;
}

.tree_item {
  display: flex;
  min-height: 35px;
  gap: 0.5em;
  padding: 0.75em 0.5em 0.75em 2em;
}
.tree_item.-current {
  border-right: 4px solid #3ea1ed;
}
.tree_item:focus {
  background: #3ea1ed !important;
  border-color: #3ea1ed !important;
  color: #fff;
}
.tree_item:focus * {
  color: #fff;
  filter: brightness(100);
}

.tree_children {
  background: #fff;
  padding-left: 2em;
  display: none;
}
.tree_node.-expanded > .tree_children {
  display: block;
}

.tree_labels {
  flex-grow: 1;
  margin-top: 0.25em;
}

.tree_expandBtn,
.tree_bullet {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  flex-shrink: 0;
}

.tree_expandBtn {
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 100%;
  flex-shrink: 0;
  cursor: pointer;
}
.tree_expandBtn:hover, .tree_expandBtn:focus {
  background: rgba(24, 110, 216, 0.15);
}
.tree_expandBtn::before {
  transition: transform 100ms;
  content: "";
  display: block;
  width: 11px;
  height: 14px;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2211%22%20height%3D%2214%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m0%200%2011%207-11%207z%22%20fill%3D%22%23186ed8%22%2F%3E%3C%2Fsvg%3E);
}
.tree_node.-expanded > .tree_item > .tree_expandBtn::before {
  transform: rotate(90deg);
}

.tree_bullet::before {
  width: 10px;
  height: 10px;
  content: "";
  display: block;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2210%22%20height%3D%2210%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Ccircle%20cx%3D%225%22%20cy%3D%225%22%20r%3D%223%22%20fill%3D%22%23111%22%2F%3E%3C%2Fsvg%3E);
}

.tree_labels,
.tree_actions {
  display: flex;
  gap: 0.5em;
}

.tabset {
  --tabset-background: #fff;
  --tabset-border: #d6d6d6;
  --tabset-border-width: 1px;
  --tabset-tab-foreground: #186ed8;
  --tabset-tab-background: transparent;
  --tabset-tab-foreground-hover: var(--tabset-tab-foreground);
  --tabset-tab-background-hover: var(--tabset-tab-background);
  --tabset-tab-background-active: #fff;
  --tabset-tab-foreground-active: #333;
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: auto 1fr;
}
.tabset.-dark {
  --tabset-background: transparent;
  --tabset-border: #666;
  --tabset-border-width: 1px;
  --tabset-tab-foreground: #999;
  --tabset-tab-background-hover: #333;
  --tabset-tab-background-active: #333;
  --tabset-tab-foreground-active: #fff;
}

.tabset_rocker {
  display: none;
  grid-row: 1;
  border-radius: 0.25em 0 0 0;
  transition: box-shadow 100ms, filter 300ms, opacity 300ms;
  cursor: default;
  position: relative;
  width: 30px;
  z-index: 11;
  border-bottom: var(--tabset-border-width) solid var(--tabset-border);
}
.tabset_rocker > * {
  opacity: 0.2;
  filter: saturate(0);
}
.tabset_rocker::after {
  transition: opacity 100ms;
  display: block;
  content: "";
  width: 10px;
  height: 100%;
  left: 100%;
  top: 0;
  position: absolute;
  opacity: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.1), transparent);
}
.tabset_rocker.-active {
  cursor: pointer;
}
.tabset_rocker.-active > * {
  filter: none;
  opacity: 1;
}
.tabset_rocker.-active::after {
  opacity: 1;
}
.tabset_rocker.-active:hover {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}
.device.-keyboard .tabset_rocker.-active:focus, .device.-keyboard .tabset_rocker.-active.-focus {
  box-shadow: 0 0 0 3px #3ea1ed;
}
.tabset_rocker.-right {
  border-radius: 0 0.25em 0 0;
  grid-column: 3;
}
.tabset_rocker.-right::after {
  left: auto;
  right: 100%;
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.1), transparent);
}
.tabset.-overflow .tabset_rocker {
  display: block;
}

.tabset_content {
  grid-column: 1/4;
  width: 100%;
}
.tabset_content.-hidden {
  display: none;
}
.device.-keyboard .tabset_content:focus, .device.-keyboard .tabset_content.-focus {
  box-shadow: 0 0 0 3px #3ea1ed;
}

.tabset_tabs {
  display: flex;
  flex-direction: row;
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative;
  z-index: 10;
  justify-content: flex-start;
  align-items: stretch;
  flex-wrap: nowrap;
  overflow-x: auto;
  grid-column: 2;
  min-height: 2.5em;
  scrollbar-width: none;
  background-color: var(--tabset-background);
  box-shadow: inset 0 calc(-1 * var(--tabset-border-width)) 0 0 var(--tabset-border);
}
.tabset_tabs::-webkit-scrollbar {
  display: none;
}

.tabset_tab {
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  background: var(--tabset-tab-background);
  text-decoration: none;
  cursor: pointer;
  font-size: 1em;
  margin: 4px 4px 0;
  line-height: 1.6em;
  border-width: var(--tabset-border-width) var(--tabset-border-width) 0;
  border-style: solid;
  border-color: transparent;
  white-space: nowrap;
  padding: 9px 2em 6px;
  position: relative;
  text-align: center;
  display: flex;
  align-items: center;
  border-radius: 0.25em 0.25em 0 0;
  color: var(--tabset-tab-foreground);
}
.tabset_tab:hover, .tabset_tab:focus {
  color: var(--tabset-tab-foreground-hover);
  background: var(--tabset-tab-background-hover);
  border-color: var(--tabset-border);
}
.device.-keyboard .tabset_tab:focus, .device.-keyboard .tabset_tab.-focus {
  box-shadow: inset 0 0 0 3px #3ea1ed;
}
.tabset_tab.-active {
  font-weight: bold;
  color: var(--tabset-tab-foreground-active);
  border-color: var(--tabset-border);
  background: var(--tabset-tab-background-active);
}
.tabset_tab.-active::before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  background: #186ed8;
  height: 3px;
}

.printout {
  --printout-header-size: 9vw;
  --printout-footer-size: 6vw;
}

@media print {
  .printout_printing {
    margin: 0;
    padding: 0;
  }
  .printout_printing > :not(.printout) {
    display: none !important;
  }
}
@media screen {
  .printout {
    display: none;
  }
}
.printout_header {
  align-items: end;
  background: #fff;
  border-bottom: 2px solid #999;
  box-sizing: border-box;
  display: flex;
  font-size: 2.6vw;
  font-weight: normal;
  height: 4.5vw;
  justify-content: stretch;
  padding: 0 0 1.2vw;
  position: fixed;
  text-align: left;
  width: 100%;
  z-index: 3;
}

.printout_headerTitle {
  flex-grow: 1;
  font-size: 3.4vw;
  color: #000;
  margin: 0;
  line-height: 1em;
  font-weight: normal;
}

.printout_headerTitleSub {
  margin: 0;
  margin-left: auto;
  line-height: 1em;
  color: #666 !important;
}

.printout_footerSpacer {
  height: var(--printout-footer-size);
}

.printout_headerSpacer {
  height: var(--printout-header-size);
}

.printout_content {
  box-sizing: border-box;
  font-size: 3vw;
  line-height: 1.8em;
  padding: 0 38% 0 0;
  text-indent: 2em;
}
.printout_content h1 {
  text-align: center;
  font-size: 3vw;
  text-transform: uppercase;
  font-weight: normal;
  margin-top: 0;
  line-height: 1em;
}
.printout_content p {
  margin: 2vw 0;
}

.printout_sidebarLabel {
  font-size: 2.6vw;
  margin: 0 0 1vw;
}

.printout_sidebar {
  background: #fff;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  height: calc(90vh - var(--printout-header-size) - var(--printout-footer-size));
  padding: 0 0.5vw;
  position: absolute;
  right: 0;
  row-gap: 3vw;
  top: 9vw;
  width: 32vw;
  z-index: 2;
}

.printout_sidebar.-repeated-pages {
  display: none;
  z-index: 1;
}

.printout_sidebarField {
  font-size: 2vw;
  display: flex;
  flex-direction: column;
}

.printout_sidebarField.-stretch {
  flex-grow: 1;
}

.printout_textarea {
  background: #fff;
  border: 0.2vw solid #999;
  box-sizing: border-box;
  flex-grow: 1;
  font-size: 2vw;
  line-height: 1.2em;
  padding: 1vw;
  position: relative;
  resize: none;
  z-index: 1;
}

.printout_textinput {
  background: #fff;
  border: none;
  border-bottom: 0.2vw solid #999;
  box-sizing: border-box;
  font-size: 2vw;
  height: 4vw;
  line-height: 1.2em;
  padding: 1vw;
  position: relative;
  z-index: 1;
}

@media print {
  .printout_sidebar.-repeated-pages {
    position: fixed;
    display: flex;
  }

  .printout_content {
    break-after: auto;
    page-break-inside: avoid;
  }
}
@page {
  @bottom-center {
    content: counter(page);
    padding-bottom: 7vw;
    font-size: 3.7vw;
  }
}
.printout_contentTable {
  border-collapse: collapse;
  width: 100%;
}
.printout_contentTable * {
  border: none !important;
}

.graphicOrg_textarea {
  width: 100%;
  border: none;
  border-radius: 3px;
  min-height: 100px;
  margin: 0;
  padding: 0.5rem;
  font-size: 13px;
  resize: none;
  background-color: transparent;
}
.graphicOrg_textarea::placeholder {
  color: black;
  font-weight: bold;
}
.graphicOrg_textarea:focus::placeholder {
  color: transparent;
}

.graphicOrg_box {
  --color: black;
  border-radius: 10px;
  border: 5px solid var(--color);
  fill: var(--color);
  background-color: #fff;
}
.graphicOrg_box.-oval {
  border-radius: 100%;
  padding: 30px 0;
}
.graphicOrg_box h2 {
  font-weight: bold;
}
.graphicOrg_box.-kwl-main, .graphicOrg_box.-main-idea-topic-1, .graphicOrg_box.-character-map-trait-1, .graphicOrg_box.-cause-and-effect-row-1, .graphicOrg_box.-event-timeline-beginning, .graphicOrg_box.-know-one, .graphicOrg_box.-prediction-clues-from-cover, .graphicOrg_box.-five-ws-who, .graphicOrg_box.-word-definition, .graphicOrg_box.-think-pair-share-myself {
  --color: #6ad93f;
}
.graphicOrg_box.-kwl-k, .graphicOrg_box.-main-idea-topic-2, .graphicOrg_box.-character-map-trait-2, .graphicOrg_box.-cause-and-effect-row-2, .graphicOrg_box.-event-timeline-middle, .graphicOrg_box.-know-two, .graphicOrg_box.-prediction-clues-from-page-one, .graphicOrg_box.-five-ws-what, .graphicOrg_box.-think-pair-share-discussion {
  --color: #73dcff;
}
.graphicOrg_box.-kwl-w, .graphicOrg_box.-main-idea-topic-3, .graphicOrg_box.-character-map-trait-3, .graphicOrg_box.-event-timeline-end, .graphicOrg_box.-know-three, .graphicOrg_box.-prediction-clues-from-pictures, .graphicOrg_box.-five-ws-when, .graphicOrg_box.-word-synonym, .graphicOrg_box.-think-pair-share-answer {
  --color: #99f;
}
.graphicOrg_box.-kwl-l, .graphicOrg_box.-character-map-trait-4, .graphicOrg_box.-main-idea-topic-5, .graphicOrg_box.-cause-and-effect-row-3, .graphicOrg_box.-know-four, .graphicOrg_box.-prediction-my-prediction, .graphicOrg_box.-five-ws-where, .graphicOrg_box.-word-antonym {
  --color: #ff7a4d;
}
.graphicOrg_box.-main-idea-topic-4 {
  --color: #ff37af;
}
.graphicOrg_box.-main-idea-topic-6, .graphicOrg_box.-five-ws-why, .graphicOrg_box.-kwl-s, .graphicOrg_box.-word-usage {
  --color: #ffc926;
}
.graphicOrg_box.-main-idea-center {
  max-width: 90%;
  margin: -30px auto;
  position: relative;
  z-index: 10;
}
.graphicOrg_box.-knowledge-map-main-idea {
  width: 40%;
  margin: 150px auto 0;
  position: relative;
  z-index: 1;
}
.graphicOrg_box.-with-line {
  position: relative;
}
.graphicOrg_box.-with-line::after {
  content: "";
  display: block;
  width: 0;
  height: 290px;
  position: absolute;
  border-width: 3px;
  border-style: solid;
  border-color: var(--color);
  left: calc(50% - 3px);
  top: calc(100% + 2px);
  transform-origin: center top;
}
.graphicOrg_box.-know-one, .graphicOrg_box.-know-four {
  margin-top: 40px;
}
.graphicOrg_box.-know-two, .graphicOrg_box.-know-three {
  margin-bottom: 40px;
}
.graphicOrg_box.-know-one::after {
  transform: rotate(-53.3deg);
}
.graphicOrg_box.-know-two::after {
  transform: rotate(-20deg);
}
.graphicOrg_box.-know-three::after {
  transform: rotate(20deg);
}
.graphicOrg_box.-know-four::after {
  transform: rotate(53.3deg);
}
.graphicOrg_box.-character-map-main-idea {
  width: 360px;
  margin: -25px auto;
  position: relative;
  z-index: 1;
}

.graphicOrg_arrow.-cause-and-effect-row-1, .graphicOrg_arrow.-event-timeline-beginning {
  fill: #6ad93f;
}
.graphicOrg_arrow.-cause-and-effect-row-2, .graphicOrg_arrow.-event-timeline-middle {
  fill: #73dcff;
}
.graphicOrg_arrow.-cause-and-effect-row-3 {
  fill: #ff7a4d;
}

.graphicOrg_boxLabel {
  font-size: 1.1875rem;
  padding: 0.25rem 0.5rem;
  font-weight: normal;
  margin: 0;
  color: #444;
  display: block;
}

.graphicOrg_vennBlocks {
  position: relative;
  max-width: 850px;
  width: 100%;
  margin: 0 auto;
}

.graphicOrg_characterMapRow,
.graphicOrg_arrowBoxRow {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}

.graphicOrg_vennBlock {
  min-height: 200px;
  border-radius: 100%;
  padding: 40px;
  width: 70%;
  text-align: center;
  position: absolute;
}
.graphicOrg_vennBlock.-left {
  background-color: rgba(115, 220, 255, 0.5);
  padding-right: 40%;
}
.graphicOrg_vennBlock.-right {
  background-color: rgba(153, 153, 255, 0.5);
  right: 0;
  padding-left: 40%;
}
.graphicOrg_vennBlock.-middle {
  width: 40%;
  margin: 0 auto;
  position: relative;
}
.graphicOrg_vennBlock .graphicOrg_textarea {
  min-height: 120px;
  background: transparent;
  text-align: center;
}

.footer {
  min-height: 75px;
  background: #222;
  color: #ccc;
  font-size: 0.75rem;
}

.footer_content {
  padding: 10px;
  max-width: 1200px;
  width: 100%;
  margin: 0 auto;
  display: grid;
  grid-template-rows: auto auto;
  grid-gap: 10px;
  align-items: center;
  justify-content: space-between;
  grid-template-columns: 1fr auto 1fr;
}
.footer.-withLanguage .footer_content {
  grid-template-columns: auto;
}

.footer_resources,
.footer_systemCheck,
.footer_langSelect {
  grid-row: 1/3;
}

.footer_systemCheck {
  text-align: right;
}

.footer_appInfo {
  grid-column: 1;
  grid-row: 1;
  white-space: nowrap;
}

.footer_links {
  grid-column: 1;
  grid-row: 2;
  margin-left: -5px;
  margin-right: -5px;
}

.footer_resources {
  display: flex;
  column-gap: 5px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .footer_content {
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .footer_content > * {
    margin-top: 10px;
  }
}
.spinner_el::before, .spinner_el::after, .spinner_container::before, .spinner_container::after {
  display: block;
  content: "";
}

.spinner {
  border-radius: 100%;
  box-shadow: 0 1px 10px 1px rgba(71, 97, 140, 0.5), 0 0 0 1px rgba(74, 74, 74, 0.35);
  position: fixed;
  width: 120px;
  height: 120px;
  top: 50vh;
  left: 50vw;
  margin-left: -60px;
  margin-top: -60px;
  z-index: 100000;
  background: #fff;
  display: none;
}
.spinner.-rendered {
  display: block;
}
.spinner_container {
  position: absolute;
  right: 0;
  left: 0;
  bottom: 0;
  top: 10px;
}
.spinner_container::before, .spinner_container::after {
  border-bottom-left-radius: 5px;
  box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.4);
  transform-origin: right center;
  width: 54px;
  height: 88px;
  background-color: #fff;
  position: absolute;
  z-index: 1;
  right: 50%;
  top: 0;
}
.spinner_container::after {
  transform: rotateX(20deg) translateZ(-3px) rotateY(-10deg);
}
.spinner_container::before {
  transform: rotateX(20deg) translateZ(-3px) rotateY(190deg);
}

.spinner_el::before, .spinner_el::after {
  box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.1);
  position: absolute;
  width: 50px;
  height: 80px;
  top: 4px;
  background-image: linear-gradient(rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0)), url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2029%2029%22%3E%3Cstyle%3E%20path%20%7B%20transform-origin%3A%20center%20%7D%20%40keyframes%20r%20%7B%20from%20%7B%20transform%3A%20rotate%280%29%7D%20to%20%7B%20transform%3A%20rotate%28360deg%29%7D%20%7D%20%3C%2Fstyle%3E%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Crect%20stroke%3D%22%23fff%22%20stroke-width%3D%222%22%20x%3D%221%22%20y%3D%221%22%20width%3D%2227%22%20height%3D%2227%22%20rx%3D%2213.5%22%2F%3E%3Cpath%20style%3D%22animation%3A%20r%202s%20linear%20infinite%22%20d%3D%22M13%2013V4c1-1%202-1%203%200v9c-1%201-2%201-3%200z%22%20fill%3D%22%23fff%22%2F%3E%3Cpath%20style%3D%22animation%3A%20r%2012s%20linear%20infinite%22%20d%3D%22M16.4%2014.3l5%205c0%201.4-.7%202-2.1%202l-5-4.9c0-1.4.7-2%202.1-2z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E);
  background-repeat: no-repeat;
  background-size: cover, 29px 29px;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}
.spinner_el::before {
  transform-origin: right center;
  animation: page-open 4000ms ease-in-out infinite forwards;
  right: 50%;
  background-position: center center, 35.5px center;
}
.spinner_el::after {
  transform-origin: left center;
  animation: page-open-flipped 4000ms ease-in-out infinite forwards;
  left: 50%;
  background-position: center center, -14.5px center;
}
.spinner_el:nth-child(1)::before, .spinner_el:nth-child(1)::after {
  animation-delay: -4000ms;
}
.spinner_el:nth-child(1)::after, .spinner_el:nth-child(4)::before {
  background-color: #7bc435;
}
.spinner_el:nth-child(2)::before, .spinner_el:nth-child(2)::after {
  animation-delay: -3000ms;
}
.spinner_el:nth-child(2)::after, .spinner_el:nth-child(1)::before {
  background-color: #ec0000;
}
.spinner_el:nth-child(3)::before, .spinner_el:nth-child(3)::after {
  animation-delay: -2000ms;
}
.spinner_el:nth-child(3)::after, .spinner_el:nth-child(2)::before {
  background-color: #34ace8;
}
.spinner_el:nth-child(4)::before, .spinner_el:nth-child(4)::after {
  animation-delay: -1000ms;
}
.spinner_el:nth-child(4)::after, .spinner_el:nth-child(3)::before {
  background-color: #7231ac;
}

@keyframes page-open {
  from {
    transform: rotateX(20deg) rotateY(190deg);
    z-index: 0;
  }
  33% {
    transform: rotateX(20deg) rotateY(190deg);
    z-index: 10000;
  }
  66% {
    transform: rotateX(20deg) rotateY(-10deg);
    z-index: 10000;
  }
  to {
    transform: rotateX(20deg) rotateY(-10deg);
    z-index: 0;
  }
}
@keyframes page-open-flipped {
  from {
    transform: rotateX(20deg) rotateY(10deg);
    z-index: 0;
  }
  33% {
    transform: rotateX(20deg) rotateY(10deg);
    z-index: 10000;
  }
  66% {
    transform: rotateX(20deg) rotateY(-190deg);
    z-index: 10000;
  }
  to {
    transform: rotateX(20deg) rotateY(-190deg);
    z-index: 0;
  }
}
.speechReco_evaluationToken.-select, .radio, .select, .searchUg.-light .searchUg_tabButton, .dictionary.-sidesheet .dictionary_entry, .button, .checkbox {
  box-shadow: inset 0 0 0 1px #0d306f42, 0 1px 2px #535a7159;
}

.form_inset, .input, .select.-inset, .listbox.-inset {
  box-shadow: inset 0 0 0 1px #0d306f21, inset 0 1px 4px #535a7159;
}

.radio:checked, .radio.-checked, .button.-checked, input:checked + .button.-withInput {
  box-shadow: 0 1px 2px #3338486b;
}

.speechReco_evaluationToken.-select:hover, .radio:hover, .select:hover, .searchUg.-light .searchUg_tabButton:hover, .searchUg.-light .searchUg_tabButton.-selected:hover, .card.-clickable:hover, .button:hover, input:hover + .button.-withInput, .checkbox:hover {
  box-shadow: inset 0 0 0 1px #3ea1ed, 0 0 0 2px rgba(62, 161, 237, 0.4);
}

.radio:active, .searchUg.-light .searchUg_tabButton:active, .searchUg.-light .searchUg_tabButton.-selected:active, .button:active, input:active + .button.-withInput, .checkbox:active {
  box-shadow: inset 0 0 0 1px rgba(20, 30, 44, 0.4), inset 0 -2px 0 0 rgba(20, 30, 55, 0.5), 0 0 0 3px #000;
}

.input:hover {
  box-shadow: inset 0 0 0 1px #3ea1ed, 0 0 0 1px rgba(62, 161, 237, 0.4);
}

.speechReco_evaluationToken.-select:focus, .radio:focus, .select:focus, .searchUg.-light .searchUg_tabButton:focus, .searchUg.-light .searchUg_tabButton.-selected:focus, .device.-keyboard .card.-clickable:focus, .device.-keyboard .card.-clickable.-focus, .button:focus, input:focus + .button.-withInput, .button.-withInput:focus, .checkbox:focus {
  box-shadow: inset 0 0 0 1px #3ea1ed, 0 0 0 3px rgba(62, 161, 237, 0.6);
}

.input:focus, .device.-keyboard .listbox.-inset:focus, .device.-keyboard .listbox.-inset.-focus {
  box-shadow: inset 0 0 0 1px #3ea1ed, 0 0 0 2px rgba(62, 161, 237, 0.6);
}

.input.-error {
  box-shadow: inset 0 0 0 1px #c00, 0 0 0 3px rgba(204, 0, 0, 0.4);
}

.select.-darkContainer, .searchUg_tabButton, .searchLg_tabIcon, .button.-darkContainer, .checkbox.-darkContainer {
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.5);
}

.input.-darkContainer {
  box-shadow: 0 0 0 1px #0d306f21, inset 0 1px 4px #535a7159;
}

.input.-darkContainer:hover, .select.-darkContainer:hover, .searchUg_tabButton:hover, .searchUg_tabButton.-selected:hover, .searchLg_tab:hover .searchLg_tabIcon, .button.-darkContainer:hover, .checkbox.-darkContainer:hover {
  box-shadow: 0 0 0 1px #0c3453, 0 0 0 3px rgba(62, 161, 237, 0.6);
}

.input.-darkContainer:focus, .select.-darkContainer:focus, .searchUg_tabButton:focus, .searchUg_tabButton.-selected:focus, .device.-keyboard .searchLg_tab:focus .searchLg_tabIcon, .device.-keyboard .searchLg_tab.-focus .searchLg_tabIcon, .button.-darkContainer:focus, .checkbox.-darkContainer:focus {
  box-shadow: 0 0 0 1px #0c3453, 0 0 0 4px #3ea1ed;
}

.select.-darkContainer:active, .searchUg_tabButton:active, .searchUg_tabButton.-selected:active, .button.-darkContainer:active, .checkbox.-darkContainer:active {
  box-shadow: 0 0 0 4px #000;
}

.checkbox {
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2216%22%20viewBox%3D%220%201%2020%2016%22%20width%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m.5%208.5%207%207%2012-12-3-3-9%209-4-4z%22%20fill%3D%22%23d1e2f7%22%2F%3E%3C%2Fsvg%3E);
  background-size: 75%;
  appearance: none;
  border-radius: 15%;
  flex-shrink: 0 !important;
  width: 24px;
  height: 24px;
  border: none;
  background-color: #fff;
  text-align: center;
  line-height: 24px;
  cursor: pointer;
  vertical-align: middle;
  margin: 3px 5px;
}
.device.-touch .checkbox {
  width: 30px;
  height: 30px;
}
.checkbox.-beefy {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 50%;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%2210%22%20r%3D%2210%22%20fill%3D%22%23d1e2f7%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  width: 40px;
  height: 40px;
}
.checkbox.-smol {
  width: 18px;
  height: 18px;
}
.checkbox:focus {
  outline: none;
}
.checkbox:disabled, .checkbox.-disabled {
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.2);
  cursor: not-allowed;
  pointer-events: none;
  background-color: #eee;
}
.checkbox:checked, .checkbox.-checked {
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2216%22%20viewBox%3D%220%201%2020%2016%22%20width%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m.5%208.5%207%207%2012-12-3-3-9%209-4-4z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
  background-size: 75%;
  background-color: #186ed8;
}
.checkbox:checked:disabled, .checkbox:checked.-disabled, .checkbox.-checked:disabled, .checkbox.-checked.-disabled {
  background-color: #627286;
}

.avatar {
  border-radius: 33%;
  border: 1px solid #fff;
  overflow: hidden;
  width: 40px;
  height: 40px;
  display: block;
}
.avatar.-small {
  width: 30px;
  height: 30px;
}

.toggle {
  appearance: none;
  height: 20px;
  width: 40px;
  flex-grow: 0 !important;
  flex-shrink: 0 !important;
  border-radius: 10px;
  background: #ccc;
  cursor: pointer;
}
.toggle:checked {
  background: #186ed8;
}
.toggle:checked::before {
  border-color: #186ed8;
  transform: translate(22px, 2px);
}
.toggle::before {
  transition: transform 75ms, border-color 75ms;
  transform: translate(2px, 2px);
  display: block;
  border-radius: 100%;
  width: 16px;
  height: 16px;
  background: #fff;
  content: "";
  pointer-events: none;
}
.toggle:hover, .toggle:focus {
  box-shadow: 0 0 0 1px white, 0 0 0 3px rgba(62, 161, 237, 0.4);
  outline: none;
}
.device.-keyboard .toggle:focus, .device.-keyboard .toggle.-focus {
  box-shadow: 0 0 0 1px white, 0 0 0 4px #3ea1ed;
}
.toggle:hover::before, .toggle:focus::before {
  box-shadow: 0 1px 2px 1px rgba(0, 0, 0, 0.4);
}
.toggle:active {
  background-color: #333;
  box-shadow: 0 0 0 3px #000;
}

.button {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-appearance: none;
  border-radius: 2em;
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  background: #fff;
  cursor: pointer;
  box-sizing: border-box;
  font-size: 16px;
  padding: 1px 16px 1px;
  color: #186ed8;
  margin: 3px;
  vertical-align: middle;
  white-space: nowrap;
  border: none;
  min-height: 35px;
  line-height: 1em;
  min-width: 35px;
  position: relative;
  text-decoration: none;
}
.button .mycon {
  background-position-x: left;
}
.device.-touch .button {
  padding: 4px 19px;
}
.button.-compact {
  line-height: 30px;
  min-height: 0;
  min-width: 0;
}
.button.-resetPadding {
  padding: 0;
}
.button.-add {
  background: linear-gradient(#00a700, #00a700);
}
.button.-cancel {
  background: linear-gradient(#e55d50 0%, #d22215 100%);
}
.button.-removeFromList {
  background: #333;
}
.button.-addToList {
  background: #db18a0;
}
.button.-read {
  background: #0e8a17;
}
.button.-download {
  background: linear-gradient(#5a83ff, #2959ea);
}
.button.-addToBookBag {
  background: #3c86ea;
}
.button.-primary {
  background: #186ed8;
  color: #fff;
}
.button.-ar {
  background: #fff;
}
.button.-ar, .button.-ar > * {
  color: #c35418 !important;
}
.button.-footer {
  background: #444;
  color: #fff;
  border: 1px solid #aaa;
}
.button:active, input:active + .button.-withInput {
  background: #333;
  color: #fff;
}
.button:active .mycon, input:active + .button.-withInput .mycon {
  background-position-x: right;
  filter: none;
  filter: none;
}
.button.-checked, input:checked + .button.-withInput {
  background-color: #222;
  background-image: none;
  color: #fff;
}
.button.-disabled, .button:disabled, input:disabled + .button.-withInput {
  box-shadow: 0 0 0 1px #bbb !important;
  transform: none !important;
  color: #bbb !important;
  cursor: not-allowed !important;
  background: #eee !important;
}
.button.-disabled .mycon, .button:disabled .mycon, input:disabled + .button.-withInput .mycon {
  background-position-x: right;
  filter: none;
  filter: none;
}
.button.-toggle {
  border-radius: 3px;
  overflow: hidden;
}
.button.-large {
  min-width: 50px;
  min-height: 50px;
  padding-top: 5px;
  padding-bottom: 5px;
}
.button.-large.-toggle {
  border-radius: 16px;
}
.button.-medium {
  min-width: 80px;
}
.button.-wide {
  min-width: 110px;
}
.button.-stack {
  flex-direction: column;
}
.button > * {
  pointer-events: none;
}
.button.-scrolling {
  height: 40px;
  overflow: hidden;
  display: block;
  text-align: center;
  padding: 0;
}
.button.-scrolling:hover .button_scrollContents, .button.-scrolling:focus .button_scrollContents, .button.-scrolling.-checked .button_scrollContents {
  transform: translateY(-100%);
}
.button.-warnOnHover:hover, .button.-warnOnHover:focus {
  background: #d22215 !important;
}

.button_scrollContents {
  transition: transform 200ms !important;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  width: 100%;
}
.button_scrollContents.-text {
  min-width: 80px;
  padding: 5px 10px;
}
.button_scrollContents > img {
  max-width: 100%;
}

.button_icon {
  align-self: center;
  justify-self: flex-start;
  flex-grow: 0;
  flex-shrink: 0;
  display: inline-block;
  margin-left: -10px;
  margin-right: -10px;
}
.button_icon + .button_text, .button_text + .button_icon {
  margin-left: 20px;
}
.button_text + .button_icon {
  margin-left: 10px;
}
.button:hover .button_icon, .button:focus .button_icon {
  animation: emphasize-scale-rotate 400ms 1;
}

@media screen and (max-width: 1000px) {
  .button.-footer .button_text {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .button.-footer .button_text {
    display: inline-block;
  }
}
.interest_label {
  font-size: 0.75rem;
}
.interest_label.-less {
  color: #767676;
}
.interest_label.-some {
  color: #666;
}

.interest_faces {
  background: rgba(96, 93, 194, 0.2);
  border-radius: 30px;
}

.interest_face {
  display: block;
  width: 60px;
  height: 60px;
  line-height: 60px;
  border-radius: 30px;
  cursor: pointer;
  box-sizing: content-box;
}
.interest_face:hover {
  background: #bfbcce;
}
.interest_face:hover .faces {
  background-position-x: right;
}

.device.-keyboard input[type=radio]:focus + .interest_face, .device.-keyboard input[type=radio].-focus + .interest_face {
  background-color: #3ea1ed;
}
input[type=radio]:checked + .interest_face {
  box-shadow: inset 0 0 0 1px #374817;
  background: #3a0;
}

.interest_language {
  border-radius: 3px;
  padding: 5px 10px 5px 5px;
  background: #e8eaf2;
}

.sticky:not(.-clone) {
  position: relative;
}
.sticky.-fixed {
  position: fixed;
}
.sticky.-bottom {
  position: absolute;
}
.sticky.-simpleStyle {
  transition: box-shadow 200ms;
}
.sticky.-simpleStyle.-fixed {
  margin-top: 0 !important;
  z-index: 998;
  background: #fff;
  box-shadow: 0 2px 10px rgba(71, 97, 140, 0.5);
}
.sticky.-clone {
  opacity: 0;
}

.autoComplete {
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
  position: absolute;
  z-index: 2000;
  background: #fff;
  color: #333;
  max-height: 400px;
  overflow-y: auto;
}

.autoComplete_list {
  list-style: none;
  padding: 0;
  margin: 0;
  line-height: 1.2em;
}

.autoComplete_listItem {
  border-top: 1px solid #eee;
  padding: 10px;
  border-left: 5px solid transparent;
}
.autoComplete_listItem.-selected {
  background: #3ea1ed;
  color: #fff;
  border-top-color: transparent;
}

.autoComplete_searchHighlight {
  border-radius: 3px;
  background-color: rgba(145, 222, 255, 0.52);
  font-style: normal;
  font-weight: bold;
}
.autoComplete_listItem.-selected .autoComplete_searchHighlight {
  background-color: #0078ac;
}

.autoComplete_detail {
  text-align: right;
  align-self: flex-end;
  font-style: italic;
  opacity: 0.6;
}

.autoComplete_shade {
  position: fixed;
  z-index: -1;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  color: rgba(255, 0, 0, 0.5);
  display: none;
}
.autoComplete.-open .autoComplete_shade {
  display: block;
}

.controlBand {
  transition: height 500ms;
  width: 100%;
}
.controlBand::after {
  content: "";
  display: block;
  clear: both;
}
@media screen and (min-width: 1200px) {
  .controlBand.-studentBookBand .controlBand_controls {
    max-height: 316.1904761905px;
  }
}
@media screen and (max-width: 768px) {
  .controlBand.-studentBookBand .controlBand_controls {
    min-height: 300px;
  }
}
.controlBand.-studentBookBand.-n4 .controlBand_controls {
  height: calc((( 100vw - 40px ) / 2.8) + 40px);
}
.controlBand.-studentBookBand.-n4 .controlBand_control {
  flex-basis: 25%;
}
.controlBand.-studentBookBand.-n5 .controlBand_controls {
  height: calc((( 100vw - 40px ) / 3.5) + 40px);
}
.controlBand.-studentBookBand.-n5 .controlBand_control {
  flex-basis: 20%;
}
.controlBand.-studentBookBand.-n6 .controlBand_controls {
  height: calc((( 100vw - 40px ) / 4.2) + 40px);
}
.controlBand.-studentBookBand.-n6 .controlBand_control {
  flex-basis: 16.6666666667%;
}
@media screen and (min-width: 1200px) {
  .controlBand.-adminBookBand .controlBand_controls {
    max-height: 426.6666666667px;
  }
}
@media screen and (max-width: 768px) {
  .controlBand.-adminBookBand .controlBand_controls {
    min-height: 404px;
  }
}
.controlBand.-adminBookBand.-n4 .controlBand_controls {
  height: calc((( 100vw - 40px ) / 2) + 40px);
}
.controlBand.-adminBookBand.-n4 .controlBand_control {
  flex-basis: 25%;
}
.controlBand.-adminBookBand.-n5 .controlBand_controls {
  height: calc((( 100vw - 40px ) / 2.5) + 40px);
}
.controlBand.-adminBookBand.-n5 .controlBand_control {
  flex-basis: 20%;
}
.controlBand.-adminBookBand.-n6 .controlBand_controls {
  height: calc((( 100vw - 40px ) / 3) + 40px);
}
.controlBand.-adminBookBand.-n6 .controlBand_control {
  flex-basis: 16.6666666667%;
}
@media screen and (min-width: 1200px) {
  .controlBand.-imageBand .controlBand_controls {
    max-height: 221.25px;
  }
}
@media screen and (max-width: 768px) {
  .controlBand.-imageBand .controlBand_controls {
    min-height: 267.5px;
  }
}
.controlBand.-imageBand.-n2 .controlBand_controls {
  height: calc((( 100vw - 40px ) / 3.2) + 40px);
}
.controlBand.-imageBand.-n2 .controlBand_control {
  flex-basis: 50%;
}
.controlBand.-imageBand.-n3 .controlBand_controls {
  height: calc((( 100vw - 40px ) / 4.8) + 40px);
}
.controlBand.-imageBand.-n3 .controlBand_control {
  flex-basis: 33.3333333333%;
}
.controlBand.-imageBand.-n4 .controlBand_controls {
  height: calc((( 100vw - 40px ) / 6.4) + 40px);
}
.controlBand.-imageBand.-n4 .controlBand_control {
  flex-basis: 25%;
}
.controlBand.-imageBand .controlBand_control {
  padding: 10px;
}

.controlBand_controls {
  transition: opacity 300ms, transform 300ms;
  padding: 0;
  margin: 0;
  opacity: 1;
}
.controlBand_controls.-transitioning {
  overflow: hidden;
}
.controlBand_controls.-loading {
  opacity: 0.5;
  pointer-events: none;
}

.controlBand_control {
  flex-grow: 0;
  flex-shrink: 0;
}

.controlBand_empty {
  padding: 20px;
  width: 75%;
}

.controlBand_overflow {
  width: 100%;
  height: 100%;
  position: relative;
}

.controlBand_batches {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-end;
  width: 100%;
  height: 100%;
  position: absolute;
  list-style: none;
  padding: 0;
  margin: 0;
  left: 0;
  top: 0;
}

.controlBand_more {
  height: 30px;
  width: 50px;
}

@keyframes post-jello {
  from {
    transform: scale(0.9, 0.9) rotate(-5deg);
  }
  15% {
    transform: scale(0.75, 1.25);
  }
  30% {
    transform: scale(1.15, 0.85);
  }
  50% {
    transform: scale(0.95, 1.05);
  }
  65% {
    transform: scale(1.05, 0.95);
  }
  to {
    transform: scale(1, 1);
  }
}
.searchLg_tabs {
  max-width: 900px;
  margin: 10px auto;
  display: flex;
  position: relative;
  z-index: 1;
  flex-direction: row;
  justify-content: stretch;
  padding: 0;
}

.searchLg_tab {
  flex-basis: auto;
  width: 12.5%;
  flex-grow: 0;
  flex-shrink: 1;
  margin: 5px;
  height: 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
  white-space: nowrap;
  padding: 0;
  border: none;
  background-color: transparent;
  cursor: pointer;
  color: #fff;
}
.searchLg_tabIcon {
  background-color: #000;
  border: 2px solid #fff;
  border-radius: 8px;
  width: max(80px, min(94px, 14.28vw - 30px));
  height: max(80px, min(94px, 14.28vw - 30px));
  margin-bottom: 5px;
  overflow: hidden;
}
.searchLg_tabIcon.-search {
  background: #ea16ed;
}
.searchLg_tabIcon.-fiction {
  background: #7231ac;
}
.searchLg_tabIcon.-lexile {
  background: #0a5892;
}
.searchLg_tabIcon.-atos {
  background: #3aaee6;
}
.searchLg_tabIcon.-guidedReading {
  background: #7bc435;
}
.searchLg_tabIcon.-gradeLevel {
  background: #ccb627;
}
.searchLg_tabIcon.-length {
  background: #fd8424;
}
.searchLg_tabIcon.-language {
  background: #ea0b18;
}
.searchLg_tabIcon > i {
  transition: transform 300ms ease-out;
}
.searchLg_tab:hover .searchLg_tabIcon > i {
  transform: scale(0.9, 0.9) rotate(-5deg);
}
.searchLg_tab.-active .searchLg_tabIcon {
  background-color: #000;
}
.searchLg_tab.-active .searchLg_tabIcon > i {
  animation: post-jello 0.7s 1 forwards;
}

.searchLg_contents {
  height: 205px;
  position: relative;
  z-index: 1;
  max-width: 900px;
  margin: 10px auto 0;
  border: none;
  border-top: 3px solid #000;
  transition: border-color 500ms;
}
.searchLg_contents::after {
  transition: left 500ms, border-color 500ms;
  content: "";
  display: block;
  position: absolute;
  bottom: 100%;
  width: 0;
  left: 0;
  border-left: 15px solid transparent;
  border-right: 15px solid transparent;
  border-bottom: 15px solid #000;
  margin-left: -15px;
}
.searchLg[data-filter=search] .searchLg_contents {
  border-top-color: #ea16ed;
}
.searchLg[data-filter=search] .searchLg_contents::after {
  border-bottom-color: #ea16ed;
  left: 6.25%;
}
.searchLg[data-filter=fiction] .searchLg_contents {
  border-top-color: #934dd0;
}
.searchLg[data-filter=fiction] .searchLg_contents::after {
  border-bottom-color: #934dd0;
  left: 18.75%;
}
.searchLg[data-filter=lexile] .searchLg_contents {
  border-top-color: #0e77c6;
}
.searchLg[data-filter=lexile] .searchLg_contents::after {
  border-bottom-color: #0e77c6;
  left: 31.25%;
}
.searchLg[data-filter=atos] .searchLg_contents {
  border-top-color: #3aaee6;
}
.searchLg[data-filter=atos] .searchLg_contents::after {
  border-bottom-color: #3aaee6;
  left: 43.75%;
}
.searchLg[data-filter=guidedReading] .searchLg_contents {
  border-top-color: #7bc435;
}
.searchLg[data-filter=guidedReading] .searchLg_contents::after {
  border-bottom-color: #7bc435;
  left: 56.25%;
}
.searchLg[data-filter=gradeLevel] .searchLg_contents {
  border-top-color: #ccb627;
}
.searchLg[data-filter=gradeLevel] .searchLg_contents::after {
  border-bottom-color: #ccb627;
  left: 68.75%;
}
.searchLg[data-filter=length] .searchLg_contents {
  border-top-color: #fd8424;
}
.searchLg[data-filter=length] .searchLg_contents::after {
  border-bottom-color: #fd8424;
  left: 81.25%;
}
.searchLg[data-filter=language] .searchLg_contents {
  border-top-color: #ea0b18;
}
.searchLg[data-filter=language] .searchLg_contents::after {
  border-bottom-color: #ea0b18;
  left: 93.75%;
}

.searchLg_storyLengthIconContainer {
  width: 100px;
  height: 80px;
}
.searchLg_storyLengthIconContainer > * {
  margin: 0 -17px;
}

.searchLg_content {
  height: 100%;
}
.searchLg_content.-hidden {
  display: none;
}
.device.-keyboard .searchLg_content:focus, .device.-keyboard .searchLg_content.-focus {
  box-shadow: inset 0 0 0 1px #000, 0 0 0 3px #3ea1ed;
  border-radius: 9px;
}

.searchLg_labelledIcon {
  width: 100%;
  height: 100%;
}

.searchLg_toggles {
  margin-top: 10px;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: row;
  justify-content: center;
  position: relative;
  max-width: 100%;
}
.searchLg_toggles.-wrap {
  flex-wrap: wrap;
  justify-content: flex-start;
}
.searchLg_toggles.-grouped::before {
  display: block;
  border-radius: 10px;
  content: "";
  position: absolute;
  top: 0;
  height: 32px;
  left: 25px;
  right: 25px;
  background-color: #444;
  z-index: -1;
}
.searchLg_toggles.-zebra {
  margin-right: 3.8461538462%;
  margin-top: 10px;
}
.searchLg_toggles.-zebra + .searchLg_toggles.-zebra {
  margin-left: 3.8461538462%;
  margin-right: 0;
}

.searchLg_toggle {
  flex-basis: auto;
  flex-grow: 0;
  flex-shrink: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 80px;
  line-height: 1.2em;
}
.searchLg_toggle.-medium {
  width: 100px;
}
.searchLg_toggle.-wide {
  width: 150px;
}
.searchLg_toggle.-grouped {
  border-radius: 5px;
  background: #444;
}
.searchLg_toggle.-horizontal {
  flex-direction: row;
  width: auto;
}
.searchLg_toggles.-zebra .searchLg_toggle {
  padding-top: 5px;
}
.searchLg_toggles.-zebra .searchLg_toggle:nth-child(2n) {
  background: #444;
}
.searchLg_toggles.-wrap .searchLg_toggle {
  margin: 5px;
  width: calc(25% - 10px);
}

.searchLg_toggle.-horizontal .searchLg_toggleLabel {
  margin-left: 5px;
}

.searchLg_toggleIcon {
  margin-bottom: 5px;
}

.searchLg_fictionFilter {
  display: flex;
  height: 190px;
  flex-direction: row;
  justify-content: space-between;
}

.searchLg_fictionGroup {
  display: flex;
  flex-direction: column;
  width: calc(50% - 200px);
  align-items: center;
  justify-content: center;
  text-align: center;
}
.searchLg_fictionGroup.-nonfiction {
  align-self: flex-end;
}

.searchLg_fictionImage {
  position: absolute;
  z-index: -1;
  right: calc(50% + 10px);
}
.searchLg_fictionImage.-nonfiction {
  left: calc(50% + 10px);
  right: auto;
}

.searchLg_suggestion {
  position: relative;
  width: 150px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.searchLg_suggestion::before {
  border-radius: 100%;
  content: "";
  background: #fff;
  display: block;
  z-index: -1;
  opacity: 0.3;
  height: 70px;
  width: 70px;
  top: -70px;
  left: 50%;
  margin-left: -35px;
  position: absolute;
}
.searchLg_suggestion > div {
  margin-top: 5px;
  margin-bottom: 5px;
}

.searchLg_fieldset {
  margin-inline: 0;
  padding-block: 0;
  padding-inline: 0;
  border: none;
  min-inline-size: 0;
}

.searchLg_legend {
  margin: 0 auto 0.2em;
  font-size: 18px;
  font-weight: 500;
}

@media screen and (max-width: 800px) {
  .searchLg_tabIcon > i {
    transform: scale(0.7) !important;
  }
}
.imageBand {
  display: flex;
  flex-direction: column;
  box-shadow: inset 0 0 0 2px rgba(62, 138, 231, 0.05), 0 0 0 rgba(0, 0, 0, 0);
  border-radius: 5px;
  height: 200px;
  transition: 100ms;
  cursor: pointer;
  text-decoration: none;
}
.imageBand:hover, .imageBand:focus {
  box-shadow: inset 0 0 0 2px #3e8ae7, 1px 3px 5px rgba(0, 0, 0, 0.5);
}

.imageBand_title {
  flex-grow: 0;
  text-align: center;
  font-size: 1.1em;
  font-weight: bold;
  color: #186ed8;
  padding: 10px;
}

.imageBand_imageWrapper {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 3%;
}

.imageBand_image {
  max-width: 100%;
  max-height: 100px;
}

.detailRow {
  display: grid;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: auto 1fr;
  grid-template-areas: "icon   title controls" "icon details controls";
  transition: background 200ms;
  padding: 5px 10px;
  min-height: 54px;
}
.detailRow.-loading {
  opacity: 0.6;
}
.detailRow.-info {
  background: #bee0f0;
}
.detailRow.-warning {
  background: #fcc;
}
.detailRow.-inline-details {
  grid-template-areas: "title details";
  grid-template-rows: auto;
  grid-template-columns: 1fr auto;
  min-height: 30px;
  gap: 0.5em;
}

.detailRow:not(.-loading) .detailRow_loading {
  display: none;
}

.detailRow.-loading .detailRow_notLoading {
  display: none;
}

.detailRow_icon {
  grid-area: icon;
  margin-right: 10px;
}
.detailRow_icon.-image {
  width: 55px;
  height: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  flex-grow: 0;
}

.detailRow_image {
  max-width: 100%;
  max-height: 100%;
}

.detailRow_title {
  grid-area: title;
  text-align: left;
  text-overflow: ellipsis;
  overflow: hidden;
  line-height: 1.2em;
}
.detailRow_title.-default {
  font-style: italic;
}

.detailRow_controls {
  grid-area: controls;
  justify-content: flex-end;
}

.detailRow_controls,
.detailRow_details {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.detailRow_details {
  grid-area: details;
  justify-content: flex-start;
  font-size: 0.8em;
  flex-wrap: wrap;
}

.detailRow_detail {
  margin-right: 10px;
  opacity: 0.6;
}
.detailRow_detail > dt,
.detailRow_detail > dd {
  display: inline-block;
  margin: 0;
}

.detailRow_status {
  margin-right: 5px;
  font-size: 0.8em;
}

.dataGrid {
  position: relative;
}

.dataGrid_progressContainer {
  transition: height 300ms;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0;
  background-color: #444;
}
.dataGrid_progressContainer.-active {
  height: 5px;
}
.dataGrid.-loading .dataGrid_progressContainer {
  height: 30px;
}

.dataGrid_progressZone {
  transition: width 200ms;
  background: #186ed8;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  z-index: 101;
}

.dataGrid_loadingRow {
  color: #ccc;
  font-style: italic;
  text-align: center;
  vertical-align: middle;
}

.dataGrid_messagebox,
.dataGrid_close,
.dataGrid_overlay {
  display: none;
}
.dataGrid.-loading .dataGrid_messagebox,
.dataGrid.-loading .dataGrid_close,
.dataGrid.-loading .dataGrid_overlay {
  display: block;
}

.dataGrid_overlay {
  background: rgba(40, 40, 40, 0.5);
  height: 100%;
  top: 0;
  left: 0;
  width: 100%;
  position: absolute;
  z-index: 100;
}

.dataGrid_close {
  margin-top: 10px;
  padding: 0 16px;
  line-height: 30px;
  cursor: default;
}

.dataGrid_messagebox {
  border-radius: 5px;
  box-shadow: 0 1px 10px rgba(0, 0, 0, 0.5);
  background: #444;
  padding: 20px;
  width: 400px;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -200px;
  margin-top: -40px;
  text-align: center;
}

.heading {
  margin: 0.5em 0;
  font-weight: bold;
  display: block;
  font-size: 1rem;
  text-align: left;
  line-height: 1.2em;
}
.heading.-h1 {
  font-size: 1.625rem;
}
.heading.-h2 {
  font-size: 1.375rem;
}
.heading.-h3 {
  font-size: 1.1875rem;
}
.heading.-h4 {
  font-size: 1rem;
}

.status {
  --bg: transparent;
  --fg: black;
  background-color: var(--bg);
  color: var(--fg);
  border-radius: 3px;
}
.status.-token {
  display: inline-block;
  padding: 2px 5px;
}
.status.-level-info {
  --bg: #91cfe4;
  --fg: #333;
}
.status.-level-debug {
  --bg: #605fbc;
  --fg: #fff;
}
.status.-level-notice {
  --bg: #8cd02c;
  --fg: #333;
}
.status.-level-warning {
  --bg: #ffa500;
  --fg: #333;
}
.status.-level-error {
  --bg: #c33;
  --fg: #fff;
}
.status.-level-critical {
  --bg: #c33;
  --fg: #fff;
}
.status.-level-alert {
  --bg: #c33;
  --fg: #fff;
}
.status.-level-emergency {
  --bg: #000;
  --fg: #fff;
}

.card {
  --card-horizontal-padding: 2rem;
  --card-vertical-padding: 1rem;
  transition: left 400ms, opacity 100ms;
  border-radius: 4px;
  box-shadow: 0 1px 5px 0 rgba(71, 97, 140, 0.5);
  padding: 0;
  opacity: 1;
  margin: 0 0 20px;
  position: relative;
  text-decoration: none;
  left: 0;
  background: #fff;
}
.card.-modal {
  overflow-wrap: anywhere;
  box-shadow: 0 20px 50px -10px rgba(0, 0, 0, 0.5);
}
.card.-medium-height {
  min-height: 200px;
}
.card.-interstitial {
  max-width: 550px;
  width: 100%;
  margin: 60px auto;
  padding-bottom: 0.5px;
}
.card.-clickable {
  border: none;
  cursor: pointer;
  color: #000;
}
.card.-clickable:active {
  box-shadow: 0 0 0 3px black, 0 1px 3px rgba(71, 97, 140, 0.5);
  color: #000;
}
.card.-clickable.-selected {
  background: #404040;
  color: #fff;
}
.card.-noOutbreak {
  overflow: hidden;
}
.card.-targeted {
  opacity: 0.6;
}
.card.-removing {
  margin-bottom: -161px;
  left: -500px;
  opacity: 0.1;
}
.card.-compact .card_footer,
.card.-compact .card_body {
  margin: 0;
  padding: 8px;
}
.card.-compact .card_header {
  padding: 8px;
}
.card.-notice {
  margin-top: 20px;
  border: 3px solid #34ace8;
}

.card_clickableHeaderWrapper {
  padding: 2px;
}

.card_header.-control {
  border-radius: 3px;
  background: #e8eaf2;
  margin: 3px;
}

.card_header {
  border-radius: 4px 4px 0 0;
  display: flex;
  align-items: center;
  flex-direction: row;
  margin: 0;
  padding: var(--card-vertical-padding) var(--card-horizontal-padding);
  min-height: 40px;
}
.card_header.-large {
  min-height: 65px;
}
.card_header.-large .card_title {
  font-size: 1.375rem;
}
.card_header.-interstitial {
  min-height: 85px;
}
.card_header.-separator {
  margin: 5px var(--card-horizontal-padding);
  padding: 5px 0;
  border-bottom: 3px solid #dde2ea;
}
.card_header.-project, .card_header.-dialog-separator {
  border-bottom: 1px solid #dde2ea;
}
.card_header.-launch {
  background-color: #444;
}
.card_header.-clickable {
  border-radius: 4px;
  background-color: #dfeaf0;
  width: 100%;
  color: #186ed8;
  cursor: pointer;
  border: none;
  text-shadow: none;
  text-decoration: none;
}
.card_header.-clickable:hover, .card_header.-clickable:focus {
  box-shadow: inset 0 0 0 2px #3ea1ed;
}
.card_header.-clickable:active {
  box-shadow: inset 0 0 0 2px #333;
}
.card.-notice .card_header {
  border-radius: 0;
  background-color: #34ace8;
  color: #fff;
}
.card.-dialog .card_header.-control {
  margin: 0;
  padding: 5px 10px;
  font-weight: normal;
}
.card_header.-roster {
  background: #5f76ba;
  color: #fff;
}
.card.-selected .card_header {
  background: #404040;
  color: #fff;
}

.card_headerImage {
  margin: -10px 20px -10px -20px;
  position: relative;
  z-index: 20;
}

.card_title {
  font-size: 1.1875rem;
  font-weight: normal;
  margin: 0;
  text-shadow: 1px 1px 0 white;
}
.card.-clickable .card_title, .card.-clickable.-selected .card_title {
  text-shadow: none;
}
.card_header > .card_title {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.card_header.-group .card_title {
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.3);
}
.card_header.-clickable .card_title {
  text-shadow: none;
  text-align: left;
}
.card_title.-body {
  margin-left: 12px;
}
.card_title.-sub {
  font-size: 1rem;
  font-weight: normal;
}

.card_figure {
  white-space: nowrap;
  margin-left: 10px;
}
.card_figure.-separator {
  padding-right: 10px;
  border-right: 1px solid #e8eaf2;
}

.card_headerIcon {
  background-position-x: left;
  margin-right: 10px;
}
.card.-selected .card_headerIcon {
  background-position-x: right;
  filter: none;
}

.card_body {
  padding-top: var(--card-vertical-padding);
  padding-bottom: calc(2 * var(--card-vertical-padding));
  margin: 0 var(--card-horizontal-padding);
  font-size: 1rem;
}
.card_body strong {
  font-weight: bold;
  color: #000;
}
.card_body + .card_body {
  border-top: 1px solid #eee;
}
.card.-dialog .card_body {
  font-size: 0.875rem;
}

.card_footer {
  margin: 0;
  padding: var(--card-vertical-padding) var(--card-horizontal-padding);
  text-align: center;
  border-radius: 0 0 4px 4px;
}
.card.-dialog .card_footer {
  background: #e8eaf2;
}
.card.-dialog .card_footer.-no-border {
  border: none;
}
.card_footer.-control {
  background: #e8eaf2;
}
.card_footer.-actions {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.card.-dialog .card_footer.-actions {
  justify-content: flex-end;
}
.card.-modal .card_footer.-actions > * {
  transform: none;
}
.card.-notice .card_footer {
  background: #34ace8;
  border-radius: 0;
}

.card_footerSummary {
  text-align: left;
  flex-grow: 1;
}

.card_action {
  text-align: center;
  flex-basis: 29%;
  flex-shrink: 0;
  flex-grow: 0;
  font-size: 14px;
  padding: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.card.-interstitial .card_action {
  font-size: 16px;
  margin: 20px;
  flex-basis: 150px;
  flex-grow: 0;
  flex-shrink: 1;
}
@media screen and (max-width: 960px) {
  .card_action.-autowrap {
    flex-basis: 95%;
    margin-bottom: 5px;
  }
  .card_action.-autowrap:last-child {
    margin-bottom: 0;
  }
}

.pager {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  font-size: 0.875rem;
  column-gap: 0.25em;
  padding: 1em;
}

.pager_link,
.pager_rocker {
  text-decoration: none;
  padding: 0;
  border-radius: 0.3em;
  border: 1px solid transparent;
  background: transparent;
  transition: border-color 100ms, background 100ms;
  min-width: 1.5em;
  min-height: 2em;
  line-height: 1em;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pager_link:hover, .pager_link:focus,
.pager_rocker:hover,
.pager_rocker:focus {
  background: #fff;
  border-color: #999;
}

.pager_link {
  color: black;
}
.pager_link.-current {
  color: white;
  background: #186ed8;
  border-color: #186ed8;
}

.pager_rocker {
  padding: 0 1em;
  color: #186ed8;
}
.pager_rocker.-pad-left-1 {
  margin-left: 1.5em;
}
.pager_rocker.-pad-right-1 {
  margin-right: 1.5em;
}
.pager_rocker.-pad-left-2 {
  margin-left: 3em;
}
.pager_rocker.-pad-right-2 {
  margin-right: 3em;
}
.pager_rocker.-pad-left-3 {
  margin-left: 4.5em;
}
.pager_rocker.-pad-right-3 {
  margin-right: 4.5em;
}
.pager_rocker.-previous::before, .pager_rocker.-next::after {
  width: 9px;
  height: 14px;
  content: "";
  background-repeat: no-repeat;
  display: block;
}
.pager_rocker.-previous::before {
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%229%22%20height%3D%2214%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7%2014%200%207l7-7%202%202-5%205%205%205-2%202Z%22%20fill%3D%22%23186ed8%22%2F%3E%3C%2Fsvg%3E);
  margin-right: 0.75em;
}
.pager_rocker.-next::after {
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%229%22%20height%3D%2214%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m2%200%207%207-7%207-2-2%205-5-5-5%202-2Z%22%20fill%3D%22%23186ed8%22%2F%3E%3C%2Fsvg%3E);
  margin-left: 0.75em;
}
.pager_rocker.-disabled {
  background: transparent;
  color: #888;
  border-color: transparent;
}
.pager_rocker.-disabled.-previous::before {
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%229%22%20height%3D%2214%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7%2014%200%207l7-7%202%202-5%205%205%205-2%202Z%22%20fill%3D%22%23888%22%2F%3E%3C%2Fsvg%3E);
}
.pager_rocker.-disabled.-next::after {
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%229%22%20height%3D%2214%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m2%200%207%207-7%207-2-2%205-5-5-5%202-2Z%22%20fill%3D%22%23888%22%2F%3E%3C%2Fsvg%3E);
}

.drag_clone {
  position: absolute;
  pointer-events: none;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.4);
}

.drag_handle {
  appearance: none;
  cursor: move;
  background: transparent;
  border: none;
}

.drag_target {
  opacity: 0.5;
}

.drag.-dragging {
  cursor: grabbing;
}
.drag.-dragging * {
  cursor: grabbing;
}

.drag_draggable {
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2222%22%20height%3D%2222%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M15%204h-2v5.002h5.002v-2L22%2011l-3.998%203.998V13H13v5.002h1.998L11%2022l-3.998-3.998h2V13H4v2l-4-4%204-4v2.002h5.002V4H7l4-4%204%204z%22%20fill%3D%22%23186ed8%22%20fill-rule%3D%22evenodd%22%2F%3E%3C%2Fsvg%3E);
  border: none;
  cursor: grab;
  border-radius: 100%;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.6);
  background-color: #fff;
  position: absolute;
  top: -3px;
  left: -3px;
  width: 30px;
  height: 30px;
  z-index: 10;
}
.device.-touch .drag_draggable {
  width: 34px;
  height: 34px;
  box-shadow: 0 0 0 2px #186ed8;
}
.drag_draggable:hover {
  box-shadow: 0 0 0 2px #186ed8;
}
.drag_draggable.-dragging {
  opacity: 0.5;
}

.drag.-dragging .drag_show,
.drag_draggable.-dragging,
.drag.-dragging .drag_droppable {
  position: relative;
  z-index: 1000001;
}

.drag.-dragging .drag_show {
  box-shadow: 0 0 0 2px #3ea1ed;
}

.drag .drag_droppable.-dragOver {
  background: #186ed8;
  text-shadow: none !important;
  color: #fff;
}

/**
 * Binary search to find the brightest color suitably darker than the provided color
 * @var $epsilon How close to get to consider it valid. Any less than 0.07 and you'll likely run into errors with hex value limitations
 */
.projectCard {
  position: relative;
  display: grid;
  margin: 0;
  grid-template-columns: 160px 1fr auto;
  grid-template-areas: "books title       quickActions" "books activities  actions" "books details     actions";
  column-gap: 2em;
  row-gap: 1em;
  padding: 20px;
}
.projectCard.-long-details {
  grid-template-areas: "books title       quickActions" "books activities  actions" "books details     details";
}
.projectCard::before {
  display: none;
}

.projectCard_title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  grid-area: title;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.projectCard_flag {
  position: absolute;
  right: 100%;
  top: 1em;
  padding: 0.75em 1.5em;
  background-color: #158a00;
  color: white;
  border-radius: 3px 0 0 3px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

.projectCard_quickActions {
  grid-area: quickActions;
}

.projectCard_activities {
  grid-area: activities;
}

.projectCard_details {
  grid-area: details;
}

.projectCard_primaryActions {
  grid-area: actions;
  min-width: 140px;
}

.projectCard_books {
  grid-area: books;
  display: flex;
  flex-direction: column;
  row-gap: 0.5em;
  align-items: center;
  justify-content: center;
}

.projectCard_bookImg {
  min-height: 90px;
  display: block;
  width: 90px;
}
.projectCard_bookImg.-empty {
  height: 120px;
}
.projectCard_book:nth-child(2n+1) .projectCard_bookImg.-empty {
  height: 135px;
}

.projectCard_book {
  border: 1px solid #fff;
  background: #eee;
}

.projectCard_book:not(:last-child) {
  overflow: visible;
}
.projectCard_books.-n2 .projectCard_book:not(:last-child) {
  width: 70px;
}
.projectCard_books.-n3 .projectCard_book:not(:last-child) {
  width: 35px;
}
.projectCard_books.-n4 .projectCard_book:not(:last-child) {
  width: 23.3333333333px;
}
.projectCard_books.-n5 .projectCard_book:not(:last-child) {
  width: 17.5px;
}

.projectCard_bookCount {
  font-size: 0.875rem;
  text-align: center;
}

.projectCard_dataLabel {
  font-size: 0.875rem;
  color: #767676;
  font-weight: normal;
}
.projectCard_dataLabel.-activities {
  width: 80px;
}

.projectCard_dataLabel,
.projectCard_dataValue {
  margin: 0;
}

.projectCard_list {
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}

.projectCard_verticalLine::before, .projectCard_verticalLine::after {
  content: "";
  display: block;
  width: 1px;
  height: 30px;
  margin: 2px auto;
  background: #ccc;
}

.projectCard_emptyLabel {
  text-align: center;
  font-size: 0.75rem;
  color: #767676;
  min-height: 3em;
  width: 250px;
}

.projectCard_emptyButton {
  min-width: 220px;
}

.bookModal {
  border-radius: 4px;
  background: #2c2c2c;
  color: #eee;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5);
  overflow: hidden;
  min-width: 700px;
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  padding-bottom: 79px;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
}

.bookModal_content {
  display: flex;
  min-height: 300px;
}

.bookModal_summary {
  padding: 30px 25px;
  max-width: 33%;
}

.bookModal_arButton {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-top: 1px solid #444;
  margin-top: 10px;
  padding-top: 10px;
}
.bookModal_arButton th {
  white-space: nowrap;
}

.bookModal_tabIcon {
  margin: 0 auto;
  opacity: 0.5;
}
.bookModal_tab.-active .bookModal_tabIcon {
  opacity: 1;
}

.bookModal_details {
  flex: 2;
  padding: 10px;
}

.bookModal_header {
  background: #222;
  border-bottom: 1px solid #444;
  border-radius: 3px 3px 0 0;
  font-size: 1.3rem;
  display: flex;
  align-items: center;
  flex-direction: row;
  padding: 10px 10px 10px 33%;
  min-height: 64px;
  overflow: hidden;
}

.bookModal_title {
  display: flex;
  flex-grow: 1;
  padding-left: 20px;
  padding-right: 20px;
}

.bookModal_actions {
  border-radius: 0 0 3px 3px;
  background-color: #222;
  border-top: 1px solid #444;
  position: absolute;
  left: 0;
  width: 100%;
  bottom: 0;
}

.bookModal_cover {
  margin-top: -10%;
  border: 2px solid #fff;
}

.bookModal_coverImg {
  display: block;
  width: 100%;
}

.bookModal_rating {
  margin: 0 auto;
}

.bookModal_ratingTitle {
  text-align: center;
  font-weight: 700;
  color: #aaa;
  margin: 15px 0 10px;
  font-size: 16px;
}

.bookModal_close {
  width: 2.5rem;
  height: 2.5rem;
}
.bookModal_close .mycon {
  background-position-x: right;
  filter: none;
  filter: none;
}

.bookModal_overflow {
  background: rgba(0, 0, 0, 0.2);
  color: #fff;
  min-height: 150px;
  max-height: 200px;
  padding: 10px 20px;
  font-weight: bold;
  line-height: 1.5em;
  overflow-y: auto;
}
.bookModal_overflow.-large {
  max-height: 450px;
}
.bookModal_overflow.-review {
  min-height: 0;
}

.bookModal_language {
  padding-top: 10px;
}

.bookModal_descr_hover {
  position: absolute;
  z-index: 10000;
  display: inline-block;
  width: 100%;
  background-color: black;
  padding-right: 5px;
}
.bookModal_descr_hover.-arrow {
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2215%22%20viewBox%3D%220%200%2032%2015%22%20width%3D%2232%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m4%200%207%207%207-7%204%204-11%2011-11-11z%22%20fill%3D%22%23EEE%22%2F%3E%3C%2Fsvg%3E);
  background-repeat: no-repeat;
  background-position: right;
}

.bookModal_descr {
  color: #fff;
  padding: 5px 0 5px 10px;
  font-weight: bold;
  line-height: 1.5em;
  overflow-y: hidden;
  width: 95%;
  max-height: 100px;
  transition: max-height 0.5s;
  scrollbar-width: none;
}
.bookModal_descr::-webkit-scrollbar {
  display: none;
}

.bookModal_descr_hover:hover .bookModal_descr {
  overflow-y: auto;
  height: auto;
  max-height: 500px;
  transition: max-height 0.5s;
}

.bookModal_table {
  width: 100%;
  color: #fff;
  border-collapse: collapse;
}
.bookModal_table.-faculty {
  position: relative;
  margin-top: 120px;
  float: right !important;
}
.bookModal_table td,
.bookModal_table th {
  padding: 6px 4px;
  border-top: 1px solid #444;
}
.bookModal_table td {
  font-weight: bold;
}
.bookModal_table th {
  text-align: right;
  font-weight: normal;
  color: #aaa;
  font-size: 0.9em;
}
.bookModal_table tr:first-child td,
.bookModal_table tr:first-child th {
  border-top: none;
}
.bookModal_table + .bookModal_table tr:first-child td,
.bookModal_table + .bookModal_table tr:first-child th {
  border-top: 1px solid #444;
}

.bookModal_review {
  display: flex;
  border-bottom: 1px solid #222;
  border-top: 1px solid #444;
  padding: 5px 0;
}
.bookModal_review:first-child {
  border-top: none;
}
.bookModal_review:last-child {
  border-bottom: none;
}
.bookModal_review.-empty, .bookModal_review.-loading {
  border: none;
}
.bookModal_review.-yours {
  background-color: rgba(87, 89, 184, 0.75);
  font-style: italic;
}

.bookModal_reviewStars {
  width: 25%;
  min-width: 120px;
}

.bookModal_starRating {
  width: 100px;
  height: 20px;
  background-image: url("https://assets.myon.com/img/stars/rating-stars-small-sprite.png?c=1ef56f74be");
  background-position: 0 1px;
  background-repeat: no-repeat;
}

.bookModal_stars {
  transition: width 400ms;
  height: 20px;
  background-image: url("https://assets.myon.com/img/stars/rating-stars-small-sprite.png?c=1ef56f74be");
  background-repeat: no-repeat;
  background-position: 0 -95px;
}
.bookModal_stars.-stars0 {
  width: 0%;
}
.bookModal_stars.-stars1 {
  width: 20%;
}
.bookModal_stars.-stars2 {
  width: 40%;
}
.bookModal_stars.-stars3 {
  width: 60%;
}
.bookModal_stars.-stars4 {
  width: 80%;
}
.bookModal_stars.-stars5 {
  width: 100%;
}

.bookModal_reviewBody {
  width: 75%;
  word-wrap: break-word;
}

.bookModal_tabContentContainer {
  position: relative;
  margin-top: 10px;
}

.bookModal_tabContent {
  position: relative;
  padding-top: 1em;
  min-height: 500px;
}
.bookModal_tabContent::after {
  content: "";
  display: table;
  clear: both;
}

.bookModal_gradeInfo {
  position: relative;
  color: #ccc;
  font-size: 13px;
}
.bookModal_gradeInfo::before {
  content: "";
  display: block;
  height: 2px;
  width: 100%;
  background: #111;
  border-bottom: 1px solid #444;
  margin-top: 20px;
  margin-bottom: 20px;
}
.bookModal_gradeInfo:hover .bookModal_gradePopup {
  transform: translateY(0) scale(1);
  opacity: 1;
  z-index: 10;
}
.bookModal_gradeInfo select {
  width: 100%;
}
.bookModal_gradeInfo h4 {
  font-weight: bold;
}
.bookModal_gradeInfo strong {
  color: #fff;
}

.bookModal_gradePopup {
  border-radius: 5px;
  transition: opacity 300ms, transform 300ms, z-index 300ms;
  transform: translateY(30px) scale(0.5, 0.5);
  transform-origin: 50% 100%;
  box-shadow: 0 2px 5px 2px rgba(0, 0, 0, 0.6);
  opacity: 0;
  position: absolute;
  background: #fff;
  color: #333;
  padding: 20px;
  width: 200px;
  left: 50%;
  margin-left: -100px;
  bottom: 100%;
  z-index: -1;
}
.bookModal_gradePopup::after {
  position: absolute;
  content: "";
  left: 50%;
  margin-left: -10px;
  top: 100%;
  border-top: 10px solid #fff;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
}

@media screen and (max-height: 900px) {
  .bookModal_table {
    font-size: 14px;
    top: 0;
  }
  .bookModal_table.-faculty {
    margin-top: 0;
  }
  .bookModal_table + .bookModal_table tr:first-child td,
.bookModal_table + .bookModal_table tr:first-child th {
    border-top: none;
  }

  .bookModal_overflow {
    max-height: 420px;
  }

  .bookModal_descr {
    height: 100%;
  }

  .bookModal_descr_hover.-arrow {
    background-image: none;
  }

  .bookModal_header {
    padding-left: 25%;
  }

  .bookModal_summary {
    max-width: 25%;
  }

  .bookModal_tabContent {
    min-height: auto;
  }

  .bookModal_tabContent.-details > *,
.bookModal_tabContent.-overview > * {
    width: 45%;
    float: left;
    font-size: 0.8em;
    margin-right: 5%;
  }
  .bookModal_tabContent.-details > *:last-child,
.bookModal_tabContent.-overview > *:last-child {
    margin-right: 0;
  }

  .bookModal_tabContent.-overview :first-child {
    max-height: 400px;
  }
}
@media screen and (max-height: 600px) {
  .bookModal_table {
    display: none;
  }

  .bookModal_overflow {
    max-height: 230px;
  }

  .bookModal_ratings {
    display: none !important;
  }

  .-details {
    display: none !important;
  }

  .bookModal_tabContent.-details > *,
.bookModal_tabContent.-overview > * {
    width: 100%;
  }

  .bookModal_detailsButton {
    display: none !important;
  }

  .bookModal_tabContentContainer {
    height: 200px !important;
  }
}
.bookModal_buttonGroup {
  display: flex;
  padding: 6px 3px;
}
.bookModal_buttonGroup > .bookModal_button {
  flex: 1;
  padding: 0 4px;
}

.bookModal_button {
  width: 100%;
  position: relative;
  -webkit-font-smoothing: antialiased;
}
.bookModal_button.-modalAction {
  font-size: 1.1875rem;
  font-weight: bold;
  border-radius: 3px;
  height: 60px;
}
.bookModal_button.-actionClose {
  border-radius: 100%;
  width: 40px;
  height: 40px;
  padding: 0;
}
.bookModal_button.-actionClose, .bookModal_button.-actionClose:hover, .bookModal_button.-actionClose:active:hover {
  background: linear-gradient(#e55d50 0%, #d22215 100%);
}
.bookModal_button.-actionClose:hover, .bookModal_button.-actionClose:active:hover {
  box-shadow: 0 0 0 1px #d22215, inset 0 0 0 1px #d22215;
}
.bookModal_button:hover .mycon, .bookModal_button:focus .mycon {
  animation: emphasize-scale-rotate 400ms 1;
}

.bookModal_lowButton {
  background: #444;
  border-radius: 2em;
  color: #fff;
  min-height: 40px;
  padding: 0.5em 1em;
}
.bookModal_lowButton:hover, .bookModal_lowButton:focus {
  background: #186ed8;
}
.bookModal_lowButton:hover .mycon, .bookModal_lowButton:focus .mycon {
  background-position-x: right;
  filter: none;
  filter: none;
}

.table {
  --header-background: #555;
  --header-foreground: #fff;
  --border-color: #ddd;
  border-collapse: collapse;
  background: #fff;
  color: #444;
  font-size: 14px;
}
.table.-seethru {
  background: transparent;
}
.table.-light {
  --header-background: #f2f5fb;
  --header-foreground: #333;
}
.table.-middle .table_tr > td {
  vertical-align: middle;
}
.table.-fullWidth {
  width: 100%;
}
.table.-fixed {
  table-layout: fixed;
}
.table.-subTable {
  margin: 1em;
}
.table.-markdown.-simple td, .table.-markdown .table_cell {
  min-width: 100px;
  vertical-align: top;
}

.table_cell.-check,
.table.-simple td.-check, .table_headerCell.-check,
.table.-simple th.-check {
  padding: 5px 5px;
  width: 30px;
  text-align: center;
}

.table_headerCell,
.table.-simple th {
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  box-shadow: inset 0.5px 0 0 0 rgba(255, 255, 255, 0.5), inset -0.5px 0 0 0 rgba(255, 255, 255, 0.5);
  cursor: default;
  text-align: left;
  vertical-align: bottom;
  color: var(--header-foreground);
  background-color: var(--header-background);
  font-size: 14px;
  font-weight: normal;
  line-height: 1.2em;
  padding: 10px 5px;
  border: none;
}
.table.-seethru .table_headerCell,
.table.-seethru .table.-simple th {
  background: transparent;
  color: #333;
}
.table_headerCell.-compound,
.table.-simple th.-compound {
  line-height: 1em;
  padding: 5px 25px 5px 10px;
  margin: 0;
}
.table_headerCell.-subheading,
.table.-simple th.-subheading {
  background: #c6c6c6;
  color: black;
  padding: 8px 5px;
  font-weight: bold;
}
.table_headerCell.-group,
.table.-simple th.-group {
  font-size: 12px;
  padding: 2px 10px;
  text-align: center;
  background-color: #333;
}
.table_headerCell.-sortable,
.table.-simple th.-sortable {
  font-weight: 500;
  position: relative;
  z-index: 10;
  padding: 10px 20px 10px 5px;
  overflow: hidden;
  cursor: pointer;
  text-overflow: ellipsis;
}
.table_headerCell.-sortable::after,
.table.-simple th.-sortable::after {
  transition: opacity 200ms;
  transform: scale(1.3, 1);
  position: absolute;
  right: 3px;
  bottom: 19px;
  display: block;
  width: 10px;
  font-size: 8px;
  line-height: 9px;
  height: 10px;
  box-sizing: border-box;
  opacity: 0.4;
  content: "▲\a▼";
  white-space: normal;
}
.table_headerCell.-sortable:hover, .table_headerCell.-sortable:focus,
.table.-simple th.-sortable:hover,
.table.-simple th.-sortable:focus {
  background-color: #767676;
}
.table_headerCell.-sortable:hover::after, .table_headerCell.-sortable:focus::after,
.table.-simple th.-sortable:hover::after,
.table.-simple th.-sortable:focus::after {
  opacity: 1;
}
.table_headerCell.-sortable.-sortAsc, .table_headerCell.-sortable.-sortDesc,
.table.-simple th.-sortable.-sortAsc,
.table.-simple th.-sortable.-sortDesc {
  background: #222;
}
.table_headerCell.-sortDesc::after,
.table.-simple th.-sortDesc::after {
  content: "▼";
  margin-bottom: -9px;
}
.table_headerCell.-sortAsc::after,
.table.-simple th.-sortAsc::after {
  content: "▲";
  margin-bottom: 0;
}
.table_headerCell.-numeric,
.table.-simple th.-numeric {
  text-align: right;
}
.table_subTable .table_headerCell,
.table_subTable .table.-simple th {
  border-bottom: 1px solid var(--border-color);
}
.table.-evenColumnWidth .table_headerCell,
.table.-evenColumnWidth .table.-simple th {
  width: 100px;
}
.device.-keyboard .table_headerCell:focus, .device.-keyboard .table_headerCell.-focus,
.device.-keyboard .table.-simple th:focus,
.device.-keyboard .table.-simple th.-focus {
  border-radius: 2px;
  box-shadow: inset 0 0 0 2px #08e;
}

.table_subTable {
  padding: 1.5em;
  border-bottom: 1px solid var(--border-color);
}

.table_cell,
.table.-simple td {
  text-overflow: ellipsis;
  overflow: hidden;
  padding: 8px 5px;
  border-bottom: 1px solid var(--border-color);
  border-left: none;
  border-right: none;
}
tr:hover > .table_cell,
tr:hover > .table.-simple td {
  background-color: #f2f5fb;
}
.table_cell.-ellipsis,
.table.-simple td.-ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.table_cell.-allowOverflow,
.table.-simple td.-allowOverflow {
  overflow: visible;
}
.table_cell.-beefy,
.table.-simple td.-beefy {
  padding: 1.5em 5px;
}
.table_cell.-icon,
.table.-simple td.-icon {
  padding: 5px 5px;
  text-align: center;
}
.table_cell.-highlight,
.table.-simple td.-highlight {
  background: #ffa;
  color: #000;
}
.table_cell.-highlight-2,
.table.-simple td.-highlight-2 {
  background: #ccffdc;
  color: #000;
}
.table_cell.-modified,
.table.-simple td.-modified {
  background: #9aebf7;
  text-decoration: none;
}
.table_cell.-error,
.table.-simple td.-error {
  background: #fcc;
}
.table_cell.-numeric,
.table.-simple td.-numeric {
  text-align: right;
}
.table_cell.-sorted,
.table.-simple td.-sorted {
  box-shadow: inset 0 0 0 1000px rgba(123, 123, 123, 0.1);
}
.table_cell.-belowGoal,
.table.-simple td.-belowGoal {
  background: #fbdbcd;
}
.table_cell.-aboveGoal,
.table.-simple td.-aboveGoal {
  background: #d3f0f2;
}
.table_cell.-hidden,
.table.-simple td.-hidden {
  display: none;
}

.table_row.-clickable,
.table.-simple tbody tr.-clickable {
  cursor: pointer;
}
.table_row:hover,
.table.-simple tbody tr:hover {
  background: rgba(232, 234, 242, 0.5);
}
.table_row.-groupHeader td, .table_row.-groupHeader:nth-child(2n) td,
.table.-simple tbody tr.-groupHeader td,
.table.-simple tbody tr.-groupHeader:nth-child(2n) td {
  border-bottom: 1px solid #b6b6f3;
}
.table_row.-inactive,
.table.-simple tbody tr.-inactive {
  color: #aaa;
}
.table_row.-hidden,
.table.-simple tbody tr.-hidden {
  display: none;
}
.table_row.-disabled,
.table.-simple tbody tr.-disabled {
  font-style: italic;
}

.table_goalInput {
  margin: 10px 0;
  text-align: right;
  width: 100%;
}
td > .table_goalInput {
  max-width: 120px;
}

.table_goalLabel {
  text-align: left;
}

.table_goalSelect {
  text-align: left;
  padding-left: 3px;
  white-space: nowrap;
}

.table_overflow {
  overflow-x: auto;
}

.articleList {
  padding: 20px;
}

.articleList_article {
  padding: 20px;
  position: relative;
  margin: 0;
  display: grid;
  grid-template-columns: auto 250px 1fr;
  grid-template-rows: auto auto auto;
}
.articleList.-grid .articleList_article {
  grid-template-columns: auto 1fr;
  grid-template-rows: auto auto auto;
}

.articleList_image {
  max-width: 100%;
  float: left;
  margin-bottom: -2000px;
}
.articleList.-grid .articleList_image {
  float: none;
  margin-bottom: 0;
  max-height: 200px;
}

.articleList_restricted {
  position: absolute;
  top: 0;
  left: 0;
}

.articleList_cell {
  display: block;
  padding: 5px;
}
.articleList_cell.-image {
  grid-column: 2;
  grid-row: 1;
  grid-row-end: 4;
  text-decoration: none;
  padding-bottom: 155px;
  padding-right: 15px;
}
.device.-keyboard .articleList_cell.-image:focus, .device.-keyboard .articleList_cell.-image.-focus {
  box-shadow: 0 0 0 3px #3ea1ed;
}
.articleList_cell.-title {
  grid-column: 3;
  grid-row: 1;
}
.articleList_cell.-preview {
  grid-column: 3;
  grid-row: 2;
}
.articleList_cell.-meta {
  grid-column: 3;
  grid-row: 3;
}
.articleList_cell.-checkbox {
  grid-column: 1;
}
.articleList.-grid .articleList_cell.-meta {
  grid-column: 2;
}
.articleList.-grid .articleList_cell.-preview {
  grid-row: 2;
  display: none;
}
.articleList.-grid .articleList_cell.-image {
  grid-column: 2;
  grid-row: 1;
  grid-row-end: 1;
  padding-right: 5px;
  padding-bottom: 0;
}
.articleList.-grid .articleList_cell.-title {
  grid-column: 2;
  grid-row: 2;
}

.articleList_empty {
  font-size: 30px;
  text-align: center;
  color: #767f8c;
  padding: 1em;
}

.articleList_link {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  column-gap: 0.5em;
}

.layout,
.layout_body,
.layout_header,
.layout_footer {
  position: relative;
  border: 0;
  margin: 0;
  padding: 0;
}

.layout {
  min-width: 768px;
  width: 100%;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}
.layout.-responsive {
  min-width: 400px;
}
.layout.-demo {
  border: 10px solid transparent;
  border-bottom-width: 60px;
}
.layout.-demo::before {
  display: block;
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border: 10px solid #9ed6f2;
  z-index: 100000000;
  pointer-events: none;
}

.layout_body,
.layout_flash,
.layout_content,
.layout_fullWidth {
  max-width: 1200px;
  min-width: 768px;
  margin-left: auto;
  margin-right: auto;
}
.layout.-responsive .layout_body,
.layout.-responsive .layout_flash,
.layout.-responsive .layout_content,
.layout.-responsive .layout_fullWidth {
  min-width: 400px;
}

.layout_body,
.layout_flash,
.layout_content {
  width: 100%;
}

.layout_body,
.layout_flash {
  margin-top: 10px;
}

.layout_body {
  flex-grow: 1;
  position: relative;
  min-height: calc(100vh - 235px);
}
.layout.-hasBookControl .layout_body {
  padding-bottom: 150px;
}
.layout_body.-page {
  box-shadow: inset 0 1px #fff, 0 1px 3px rgba(71, 97, 140, 0.4);
  border-radius: 2px;
  background: rgba(255, 255, 255, 0.5);
}
.layout_body.-full {
  max-width: 100%;
  margin-top: 0;
}
.layout.-static .layout_body {
  padding: 40px;
}

.layout_skip {
  transition: left 150ms, opacity 150ms;
  border-radius: 2px;
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.3);
  border: none;
  background: #fff;
  padding: 10px;
  position: absolute;
  opacity: 0;
  top: 10px;
  left: -300px;
  z-index: 1000;
}
.layout_skip:focus {
  left: 10px;
  opacity: 1;
}

.layout_header {
  z-index: 110;
  text-align: center;
}

.layout_footer {
  margin-top: 20px;
}

.layout_demoNotice {
  background: #9ed6f2;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 10px 2em;
  height: 60px;
  z-index: 10000000;
}
.layout_demoNotice > img {
  max-height: 100%;
}

.layout_mediumContent {
  margin: 0 auto;
  padding: 20px;
  max-width: 960px;
}

.layout_smallContent {
  margin: 0 auto;
  padding: 20px;
  max-width: 500px;
}

.page {
  --gutter: 1em;
  --sidebar-width: 300px;
  padding-left: 10px;
  padding-right: 10px;
}
.page.-interests {
  margin-left: auto;
  margin-right: auto;
  max-width: 800px;
}
.page.-assignments {
  --gutter: 2em;
  --sidebar-width: 250px;
}
@media screen and (max-width: 1100px) {
  .page.-assignments {
    --sidebar-width: auto;
  }
  .page.-assignments .page_body {
    flex-direction: column;
  }
  .page.-assignments .page_sidebar {
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
  }
}

.page_body {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: stretch;
  flex-basis: auto;
  flex-grow: 1;
  gap: var(--gutter);
}
.page_body.-hasSidesheetButtons {
  position: relative;
  --offset: 105px;
  max-width: calc(100vw - var(--gutter) - var(--offset));
}
@media screen and (min-width: 1200px) {
  .page_body.-hasSidesheetButtons {
    --offset: calc(50vw - 495px);
  }
}
@media screen and (min-width: 1410px) {
  .page_body.-hasSidesheetButtons {
    --offset: 0;
  }
}

.page_actions {
  margin-bottom: 30px;
  text-align: center;
}

.page_sidebar {
  width: var(--sidebar-width);
  max-width: var(--sidebar-width);
  flex: 0 0 var(--sidebar-width);
}
.page_sidebar.-windowHeight {
  max-height: 100vh;
  overflow-y: auto;
}

.page_content {
  flex: 1 1 auto;
  margin: 0;
}
.page_sidebar + .page_content {
  margin-bottom: 0;
  width: calc(100% - var(--gutter) - var(--sidebar-width));
}

.page_title {
  font-size: 1.625rem;
  padding: 0 5px 5px 5px;
  font-weight: normal;
}
.page_title,
.page_title > * {
  line-height: 1em;
  margin-bottom: 0;
}

.page_filters {
  margin: 1rem 0.5rem;
}

.page_breadcrumb + .page_title,
.page_breadcrumb + .page_breadcrumb {
  margin-left: 10px;
  padding-left: 5px;
}

.page_header {
  margin-top: 10px;
  margin-bottom: 10px;
  min-height: 50px;
}
.page_header.-section {
  border-radius: 2px;
  padding: 10px;
  background: #dde2ea;
  line-height: 1em;
  margin-top: 20px;
  margin-bottom: 20px;
  min-height: auto;
  font-size: 18px;
  font-weight: bold;
}
.page_header.-sidebarPush {
  margin-left: 10px;
}

.page_descr {
  line-height: 1.5em;
  color: #444;
  padding-top: 20px;
  padding-bottom: 20px;
  margin: 0;
}
.page_header + .page_descr {
  border-top: 3px solid #dde2ea;
}

.page_breadcrumb {
  display: inline-block;
  margin: 0;
  padding-right: 10px;
  position: relative;
  font-weight: normal;
  font-size: 1.375rem;
}
.page_breadcrumb::after {
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%228%22%20height%3D%2212%22%20viewBox%3D%220%200%208%2012%22%3E%3Cpath%20fill%3D%22%239CACC1%22%20fill-rule%3D%22evenodd%22%20d%3D%22M.5%209.5l2%202L8%206%202.5.5l-2%202L4%206z%22%2F%3E%3C%2Fsvg%3E);
  display: block;
  width: 8px;
  height: 12px;
  content: "";
  position: absolute;
  right: -8px;
  top: 50%;
  margin-top: -5px;
}

.page_sidesheetButtons {
  position: absolute;
  left: calc(100% + var(--gutter));
  display: flex;
  flex-direction: column;
  column-gap: var(--gutter);
}

.page_sidesheetButton {
  width: 75px;
  min-height: 75px;
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
  align-items: center;
  font-size: 0.75rem;
  color: #186ed8 !important;
}

.listbox.-inset {
  border-radius: 3px;
  border: none;
}
.listbox.-overflow {
  overflow-y: auto;
}
.listbox.-flex {
  flex: 1 1 auto;
  height: 0;
}

.device.-keyboard .listbox_options:focus, .device.-keyboard .listbox_options.-focus {
  box-shadow: inset 0 0 0 3px #3ea1ed;
}

.listbox_options,
.listbox_option {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.device:not(.-touch) .listbox_option:not(.-focus):not(:hover) .listbox_focusOnly:not(:focus) {
  opacity: 0;
}

.listbox_message {
  padding: 1em 2em;
  font-style: italic;
  opacity: 0.7;
  border-bottom: 1px solid #ddd;
}
.listbox_message.-center {
  text-align: center;
}

.listbox_option {
  padding: 0;
}
.listbox_option.-focus, .listbox_option:hover {
  background-color: rgba(188, 196, 227, 0.22);
}
.listbox.-selectable .listbox_option.-focus, .listbox.-selectable .listbox_option:hover {
  background-color: #f2f5fb;
}
.listbox.-selectable .listbox_option.-selected {
  background-color: #3ea1ed;
  color: #fff;
}
.listbox_option + .listbox_option {
  border-top: 1px solid #ddd;
}

.breadcrumb {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 0.875rem;
  display: flex;
  align-items: center;
}

.breadcrumb_item {
  color: #767676;
  flex-shrink: 0;
  white-space: nowrap;
}
.breadcrumb_item.-link, .breadcrumb_item.-current {
  color: #444;
  font-weight: 600;
}
.breadcrumb_item + .breadcrumb_item::before {
  color: #767676;
  display: inline-block;
  content: "/";
  margin: 0 0.5em;
}
.breadcrumb_item.-link + .breadcrumb_item::before {
  content: ">";
}
.breadcrumb_item.-current {
  flex: 0 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
}

.breadcrumb_link {
  color: #444;
  font-weight: 500;
  text-decoration: underline;
}

.autoLayout {
  display: grid;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
.autoLayout.-leftRightCenter {
  grid-template-columns: 1fr auto 1fr;
  grid-gap: 10px;
}
@media screen and (max-width: 700px) {
  .autoLayout.-leftRightCenter,
.autoLayout.-leftRightCenter > * {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
  .autoLayout.-leftRightCenter > * {
    margin-bottom: 10px;
  }
}
.autoLayout.-leftRightCenter > :last-child {
  text-align: right;
  justify-self: end;
}

.slider {
  position: relative;
  overflow: hidden;
}
.slider.-vertical .slider_item.-prev {
  transform: translateY(-80px);
}
.slider.-vertical .slider_item.-next {
  transform: translateY(80px);
}

.slider_item {
  opacity: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  transition: transform 300ms, z-index 300ms, opacity 300ms;
}
.slider_item.-hidden {
  z-index: 9;
}
.slider_item.-prev {
  transform: translateX(-80px);
}
.slider_item.-next {
  transform: translateX(80px);
}

.slider_item.-hidden, .slider_item.-prev, .slider_item.-next {
  opacity: 0;
}

.controlPanel {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 2rem;
  grid-row-gap: 0.5rem;
  padding: 0.5rem 1rem;
  line-height: 1.6em;
}

.controlPanel_title {
  grid-column: 1/3;
}

.controlPanel_controls {
  grid-column: 1;
  display: flex;
  flex-direction: column;
  align-items: start;
  row-gap: 0.5rem;
}
.controlPanel_controls :first-child {
  margin-top: 0;
}

.controlPanel_description {
  grid-column: 2;
}
.controlPanel_description :first-child {
  margin-top: 5px;
}

@media screen and (max-width: 1000px) {
  .controlPanel {
    display: flex;
    flex-direction: column;
    row-gap: 0.5rem;
  }
}
.media {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.media.-inline {
  display: inline-flex;
}

.media_figure {
  flex-shrink: 0;
  flex-grow: 0;
  display: inline-block;
  margin-right: 5px;
}
.media_figure.-right {
  margin-right: 0;
  margin-left: 10px;
}

.flyoutButton {
  display: flex;
  align-items: center;
  height: 40px;
  position: relative;
  background: #464a9c;
  border-radius: 0.75em;
  padding: 0.5em 15px;
}
.flyoutButton:not(.-disabled) {
  padding-right: 43px;
}
.flyoutButton:not(.-disabled):hover, .flyoutButton:not(.-disabled):focus {
  background: #626cd5;
}
.flyoutButton:not(.-disabled):active {
  background: #333586;
}
.flyoutButton.-withImage {
  padding-left: 0;
}
@media screen and (max-width: 768px) {
  .layout.-responsive .flyoutButton {
    display: block;
  }
}
.flyoutButton.-disabled {
  padding-right: 15px;
}

.flyoutButton:not(.-disabled)::after {
  content: "";
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2213%22%20height%3D%229%22%20viewBox%3D%220%200%2013%209%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m2%200%204.5%204.5L11%200l2%202-6.5%206.5L0%202z%22%20fill%3D%22%23FFF%22%2F%3E%3C%2Fsvg%3E);
  background-repeat: no-repeat;
  right: 15px;
  position: absolute;
  width: 13px;
  height: 9px;
  align-self: center;
  justify-self: center;
}

.flyoutButton_img {
  margin: 0 15px 0 0;
  width: 40px;
  height: 40px;
  border: 1px solid #fff;
  border-radius: 0.75em;
}

.flyoutButton_title {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 35px;
  font-size: 16px;
  color: #fff;
  text-align: right;
}
@media screen and (max-width: 850px) {
  .flyoutButton_title {
    font-size: 0.875rem;
  }
}

.quiz {
  max-width: 900px;
  margin: 0 auto;
  padding: 20px;
}

.quiz_title {
  margin-bottom: 1em;
}

.quiz_question {
  transition: opacity 300ms;
}
.quiz_question.-hasNextButton {
  position: relative;
  padding-bottom: 20px;
  margin-bottom: 50px;
}
.quiz_question.-blur {
  opacity: 0.3;
  pointer-events: none;
  cursor: auto;
}
.quiz_question.-shake {
  transform: rotate(0);
  transform-origin: 0% 50%;
  animation: quiz_question-shake;
  animation-duration: 500ms;
  animation-iteration-count: 1;
}

.quiz_questionTitle {
  line-height: 1.2em;
  font-size: 20px;
  border: none;
  margin: 0;
  padding: 15px 20px;
}

.quiz_answers {
  padding: 10px 50px;
}

.quiz_answer {
  display: block;
  padding: 5px 10px;
  cursor: pointer;
}

.quiz_ordinal {
  margin-right: 10px;
  width: 40px;
  height: 40px;
  border-radius: 40px;
  line-height: 40px;
  text-align: center;
  flex-shrink: 0;
  flex-basis: 40px;
  background: #fff;
}

.quiz_results {
  border-radius: 23px;
  transition: background 300ms;
  background: #fff;
  padding: 3px;
  margin: 2px 0;
  vertical-align: bottom;
}
.quiz_results.-correct {
  background: #21d725;
}
.quiz_results.-incorrect {
  background: #b00610;
}
.quiz_results.-correct .quiz_resultLabel, .quiz_results.-incorrect .quiz_resultLabel {
  opacity: 1;
}
.quiz_results .quiz_answer {
  border-radius: 20px !important;
  background: #fff;
  width: auto !important;
  padding: 0 10px;
  flex-shrink: 1;
}

.quiz_resultLabel {
  transition: opacity 300ms;
  opacity: 0;
  min-height: 58px;
  color: #fff;
  padding-right: 20px;
  text-shadow: 1px 1px 1px #333;
}

.quiz_answerLabel, .quiz_resultLabel {
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
}

.quiz_answerLabel {
  min-height: 51px;
  padding: 5px;
}

.quiz_answerCheck {
  padding: 12px 5px;
}

.quiz_nextButton {
  pointer-events: none;
  position: absolute;
  bottom: -15px;
  right: 50%;
  width: 40px;
  margin-right: -20px !important;
  height: 40px;
  opacity: 0;
}
.quiz_nextButton.-pill {
  width: 120px;
  margin-right: -60px !important;
}
.quiz_nextButton.-visible {
  pointer-events: auto;
  opacity: 1;
}

.quiz_nextIcon {
  width: 34px;
  height: 34px;
}
.quiz_nextIcon::before, .quiz_nextIcon::after {
  transition: transform 300ms;
  box-shadow: 2px 1px 1px rgba(0, 0, 0, 0.3);
  display: block;
  content: "";
  position: absolute;
  background: #fff;
}
.quiz_nextIcon::before {
  width: 15px;
  height: 3px;
  transform: translate(0, 15px) rotate(45deg) translate(4px, -4px);
}
.quiz_nextIcon::after {
  width: 3px;
  height: 15px;
  transform: translate(0, 15px) rotate(45deg) translate(10px, -19px);
}

.quiz_formBtn {
  margin-left: 5% !important;
  padding: 14px 20px !important;
  font-size: 20px !important;
  font-weight: bold !important;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3) !important;
}

.quiz_navContainer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #111;
}
.quiz_navContainer > .quiz_nav {
  max-width: 900px;
  margin: 0 auto;
}

.quiz_textButtons {
  padding: 10px 20px;
  display: inline-block;
}

.quiz_navButtons {
  display: inline-block;
  float: right;
}

.quiz_navButtonContainer {
  transition: background 200ms;
  display: inline-block;
  padding: 10px 2px;
  margin: 0 2px;
}
.quiz_navButtonContainer.-filled {
  background: #42a5e5;
}
.quiz_navButtonContainer.-correct {
  background: #21d725;
}
.quiz_navButtonContainer.-flicker {
  animation: quiz_flicker 1000ms infinite both;
}
.quiz_navButtonContainer.-flicker:nth-child(5n+0) {
  animation-delay: 188ms;
  animation-duration: 941ms;
  animation-direction: reverse;
}
.quiz_navButtonContainer.-flicker:nth-child(5n+1) {
  animation-delay: 271ms;
  animation-duration: 1415ms;
}
.quiz_navButtonContainer.-flicker:nth-child(5n+2) {
  animation-delay: 177ms;
  animation-duration: 853ms;
  animation-direction: reverse;
}
.quiz_navButtonContainer.-flicker:nth-child(5n+3) {
  animation-delay: 97ms;
  animation-duration: 935ms;
  animation-direction: reverse;
}
.quiz_navButtonContainer.-flicker:nth-child(5n+4) {
  animation-delay: 20ms;
  animation-duration: 1363ms;
}
.quiz_navButtonContainer.-incorrect {
  background: #b00610;
}

@keyframes quiz_flicker {
  25% {
    background: rgba(22, 146, 238, 0);
  }
  33% {
    background: rgba(22, 146, 238, 0.5);
  }
  44% {
    background: rgba(22, 146, 238, 0.2);
  }
  55% {
    background: rgba(22, 146, 238, 0.8);
  }
  55% {
    background: rgba(22, 146, 238, 0.5);
  }
  75% {
    background: rgba(22, 146, 238, 0);
  }
  100% {
    background: rgba(22, 146, 238, 0.9);
  }
}
.quiz_navButton {
  display: inline-block;
  font-size: 28px;
  font-weight: bold;
}

.quiz .button > * {
  pointer-events: none;
}

.quiz_nav {
  background: #111;
  color: #fff;
}

@keyframes quiz_question-shake {
  20% {
    transform: rotate(5deg);
  }
  50% {
    transform: rotate(-5deg);
  }
  80% {
    transform: rotate(5deg);
  }
}
.demoBanner {
  font-size: 0.875rem;
  background: #9ed6f2;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

.demoBanner_img {
  height: 40px;
  position: relative;
  border-radius: 100%;
  border: 1px solid #fff;
  margin-top: -5px;
  margin-bottom: -5px;
  z-index: 100000;
}

.demoBanner_exit {
  color: #000;
  font-weight: bold;
}

.pCloudSidesheet {
  line-height: 1.5em;
}

.pCloudSidesheet_task {
  position: relative;
  margin-bottom: 20px;
}

.pCloudSidesheet_taskIcon {
  position: absolute;
  right: calc(100% + 10px);
  top: -4px;
}

.pCloudSidesheet_tasklist {
  list-style: none;
  margin: 0;
  padding: 20px 20px 20px 60px;
}

.pCloudSidesheet_taskTable,
.pCloudSidesheet_taskDescription {
  margin: 10px 0 0 10px;
  overflow-wrap: break-word;
  width: 70ch;
}

.pCloudSidesheet_taskDescription {
  width: 60ch;
}

.pCloudSidesheet_taskTitle {
  font-size: 1.1rem;
  font-weight: bold;
}

.pCloudSidesheet_sidebar {
  max-width: 40ch;
  padding: 20px;
}

.pCloudSidesheet_detailTitle {
  font-weight: lighter;
}

.pCloudSidesheet_detail {
  font-size: 1rem;
}
.pCloudSidesheet_detail + .pCloudSidesheet_detail {
  margin-top: 40px;
}

.pCloudSidesheet_objective {
  margin: 20px;
  font-size: 1.1rem;
}

.pCloudSidesheet_detailText {
  font-size: 0.9em;
  padding-left: 10px;
  max-width: 70ch;
  min-width: 30ch;
}

.pCloudSidesheet_novalue {
  margin-bottom: 5px;
  display: inline-block;
  color: #555;
}

.fixedHeaderTable {
  position: relative;
  width: 100%;
  overflow: auto;
}

.fixedHeaderTable_cloneContainer {
  z-index: 1;
  position: relative;
  display: none;
  overflow: hidden;
}
.fixedHeaderTable.-sticky .fixedHeaderTable_cloneContainer {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  pointer-events: none;
  box-shadow: 0 2px 10px rgba(71, 97, 140, 0.5);
}
.fixedHeaderTable.-initialized .fixedHeaderTable_cloneContainer {
  display: block;
}

.fixedHeaderTable_cloneTable {
  position: relative;
}
.fixedHeaderTable.-sticky .fixedHeaderTable_cloneTable {
  background-color: #fff;
  position: absolute;
  pointer-events: auto;
}

.fixedHeaderTable_tableContainer {
  overflow-y: auto;
}
.fixedHeaderTable.-initialized .fixedHeaderTable_tableContainer thead {
  visibility: hidden;
}

.contentbar {
  display: flex;
  box-shadow: 0 1px 0 0 #ccc, 0 2px 0 0 white, inset 0 1px 0 0 #fff;
  margin-bottom: 1px;
}
.contentbar.-lonely {
  box-shadow: none;
}
.contentbar.-page {
  background: #fff;
  min-height: 60px;
}
.contentbar.-wrap {
  flex-wrap: wrap;
}
.contentbar.-spaced-between {
  justify-content: space-between;
}

.contentbar_content,
.contentbar_img,
.contentbar_block,
.contentbar_input {
  display: flex;
  align-content: center;
  justify-content: center;
  flex-direction: column;
  flex-shrink: 0;
}

.contentbar_content {
  flex-basis: auto;
  flex-grow: 1;
  flex-shrink: 1;
  padding: 0 10px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.contentbar_title {
  font-size: 1.375rem;
  font-weight: 400;
  margin: 0;
  line-height: 1.3em;
}
.contentbar_title.-sub {
  font-size: 1rem;
  font-weight: 100;
}
.contentbar_title.-link {
  color: #186ed8;
  align-self: flex-start;
}

.contentbar_block {
  padding: 0 10px;
}
.contentbar_block.-search {
  color: #666;
  font-weight: normal;
}
.contentbar_block.-control {
  padding: 10px;
}
.contentbar_block.-nav {
  min-width: 300px;
}
.contentbar_block.-actions {
  min-height: 60px;
  background: #d1e2f7;
}
.contentbar_block.-figure {
  text-align: center;
}

.contentbar_input {
  padding: 2px;
  flex-direction: row;
  align-items: center;
  justify-content: space-evenly;
}

.contentbar_figure,
.contentbar_figureItem,
.contentbar_figureCaption {
  line-height: 1.1em;
  margin: 0;
}

.contentbar_figureCaption {
  font-size: 16px;
  color: #444;
}

.contentbar_figureItem {
  color: #000;
  font-weight: normal;
  font-size: 32px;
}

.contentbar_img {
  height: 55px;
  width: 55px;
  margin: 2px;
}

.dictionary {
  line-height: 2em;
}
.dictionary.-sidesheet {
  padding: 1em;
}

.dictionary_searchBar {
  margin: 0 5px 10px;
  display: flex;
  flex-direction: row;
  align-items: center;
}

.dictionary_word {
  background-color: #d6eefa;
  height: 45px;
  font-weight: bold;
  font-size: 1.1875rem;
}

.dictionary_partOfSpeech {
  line-height: 1.4em;
  font-size: 1rem;
  font-style: italic;
  color: #444;
  display: flex;
  align-items: center;
  min-height: 40px;
  margin-bottom: 5px;
}

.dictionary_definition {
  margin-left: 6px;
  font-size: 0.875rem;
  font-weight: bold;
  color: #000;
  line-height: 150%;
}
.dictionary_definition.-alt {
  font-weight: bold;
}

.dictionary_expander {
  margin: 0 10px;
  padding: 5px 0;
  border-top: 1px solid #d6eefa;
}

.dictionary_expanderTitle {
  font-size: 0.875rem;
  font-weight: 300;
  color: #222;
  text-align: left;
  margin: 0;
}

.dictionary_expanderButton {
  transition: background-color 100ms;
  width: 100%;
  display: block;
  position: relative;
  height: 40px;
}
.dictionary_expanderButton::after {
  content: "";
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2211%22%20height%3D%228%22%20viewBox%3D%220%200%2011%208%22%3E%3Cpath%20fill%3D%22%23333%22%20fill-rule%3D%22evenodd%22%20d%3D%22M2.5.5l3%203%203-3%202%202-5%205-5-5z%22%2F%3E%3C%2Fsvg%3E);
  width: 11px;
  height: 8px;
  display: block;
  position: absolute;
  right: 15px;
  top: 50%;
  margin-top: -4px;
  transition: transform 300ms;
  transform-origin: center;
  opacity: 0.5;
}
.dictionary_expanderButton.-open::after {
  transform: rotate(-180deg);
}
.dictionary_expanderButton:focus, .dictionary_expanderButton:hover {
  background: #f5f5f5;
}
.dictionary_expanderButton:focus::after, .dictionary_expanderButton:hover::after {
  opacity: 1;
}
.device.-keyboard .dictionary_expanderButton:focus, .device.-keyboard .dictionary_expanderButton.-focus {
  border-radius: 1px;
  box-shadow: 0 0 0 3px #3ea1ed;
}

.dictionary_relatedWord {
  font-size: 0.875rem;
  font-weight: bold;
  color: #000;
  line-height: 140%;
}

.dictionary_boldForms {
  margin-left: 6px;
  font-size: 0.875rem;
  color: #444;
  line-height: 140%;
}

.dictionary_examples {
  font-size: 0.875rem;
  color: #444;
  line-height: 140%;
}
.dictionary_examples li {
  margin-left: 6px;
}

.dictionary_entryHeader {
  background-color: #d6eefa;
  min-height: 50px;
  font-weight: bold;
  padding: 5px 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.dictionary_headword {
  font-size: 1.1875rem;
  word-break: break-all;
  margin: 0;
}

.dictionary_entryBody {
  padding: 10px;
}

.dictionary_searchInput {
  width: 100%;
  flex-grow: 1;
}

.dictionary_content {
  background: #fff;
  max-height: 80vh;
  overflow-y: auto;
  color: #333;
}
.device.-portrait .dictionary_content {
  max-height: 50vh;
}

.dictionary_entry {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #d6eefa;
  background-color: transparent;
}
.dictionary_entry:first-child {
  border-top: none;
}
.dictionary_entry:last-child {
  border-bottom: none;
}
.dictionary.-sidesheet .dictionary_entry {
  margin-bottom: 1em;
  border-radius: 0.5em;
  overflow: hidden;
}

.dictionary_list {
  padding: 0 0 0 20px;
  margin: 0;
}
.dictionary_list li {
  margin-bottom: 5px;
}

.dictionary_audio {
  flex-shrink: 0;
  box-shadow: 0 1px 3px -1px rgba(0, 0, 0, 0.3);
  border-radius: 20px;
  background-color: #fff;
  background-image: url("https://assets.myon.com/img/reader/speaker_16x16_32.png?c=ed286adac5");
  background-position: center;
  background-repeat: no-repeat;
  cursor: pointer;
  border: none;
  display: block;
  margin-left: 5px;
  width: 50px;
  height: 40px;
}
.dictionary_audio:hover {
  box-shadow: 0 1px 3px -1px rgba(0, 0, 0, 0.3), 0 0 0 3px rgba(62, 161, 237, 0.4);
}
.device.-keyboard .dictionary_audio:focus, .device.-keyboard .dictionary_audio.-focus {
  box-shadow: 0 0 0 3px #3ea1ed;
}

.dictionary_message {
  line-height: 20px;
}
.dictionary_message.-searching {
  color: #888;
  font-style: italic;
}

.dictionary_copyright {
  margin-top: 5px;
  font-size: 0.875rem;
}

.dictionary_searchButton {
  padding: 2px 10px;
  margin-left: 5px;
}

.metric {
  font-size: 1rem;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  display: flex;
  line-height: 1.3em;
  padding: 0;
  margin: 0;
  min-height: 4em;
}
.metric.-inline {
  flex-direction: row;
}

.metric_value {
  text-align: center;
  font-size: 1.625rem;
  line-height: 120%;
  display: flex;
  align-items: center;
}
.metric_value.-large {
  font-size: 44px;
  line-height: normal;
}
.metric_value.-sub {
  font-size: 0.875rem;
}

.metric_icon {
  margin-right: 10px;
  flex-shrink: 0;
}

.metric_label {
  display: flex;
  flex-direction: row;
  text-align: center;
  align-items: center;
  justify-content: center;
  margin-top: 5px;
  font-size: 0.875rem;
}
.metric.-inline .metric_label {
  margin-top: 0;
  margin-right: 10px;
}

.dashboardList {
  background: #fff;
  padding: 5px;
}
.dashboardList.-withSummary {
  position: relative;
}
.dashboardList.-withSummary .dashboardList_item {
  padding-top: 1em;
  padding-bottom: 1.5em;
}
.dashboardList.-inline {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #ccc;
}
.dashboardList.-small {
  font-size: 14px;
}

.dashboardList_summary {
  position: absolute;
  bottom: 5px;
  left: 5px;
  color: #555;
  font-size: 12px;
}

.dashboardList_items {
  display: flex;
  padding: 0;
}

.dashboardList_items,
.dashboardList_item {
  list-style: none;
  margin: 0;
}

.dashboardList_item {
  flex-basis: 250px;
  flex-grow: 1;
  flex-shrink: 1;
  padding: 10px;
  border-radius: 4px;
  display: flex;
}
.dashboardList_item:nth-child(2n) {
  background-color: #e8eaf2;
}
.dashboardList_item > * {
  flex-grow: 1;
}
.dashboardList_item:first-child {
  border-left: none;
}

.sliderCtl {
  padding-left: 20px;
  padding-right: 20px;
  touch-action: none;
}

.sliderCtl_labels,
.sliderCtl_marks {
  position: relative;
}

.sliderCtl_labels {
  height: 20px;
  margin-top: 10px;
}

.sliderCtl_marks {
  height: 20px;
}
.sliderCtl_marks.-empty {
  display: none;
}

.sliderCtl_mark {
  transition: max-width 300ms, max-height 300ms, border-radius 300ms;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.4);
  border-radius: 10px;
  max-width: 20px;
  max-height: 20px;
  top: 10px;
  padding: 0;
  position: absolute;
  margin-left: -10px;
  z-index: 10;
  text-shadow: 0 1px 2px #555;
  cursor: pointer;
}
.sliderCtl_mark::before {
  content: "";
  display: block;
  position: absolute;
  border: 8px solid transparent;
  border-top: none;
  top: -4px;
  margin-left: 2px;
}
.sliderCtl_mark.-building {
  color: #fff;
  background: #57badc;
}
.sliderCtl_mark.-building::before {
  border-bottom-color: #57badc;
}
.sliderCtl_mark.-account {
  color: #fff;
  background: #fa0;
}
.sliderCtl_mark.-account::before {
  border-bottom-color: #fa0;
}
.sliderCtl_mark.-system {
  color: #fff;
  background: #5e65ba;
}
.sliderCtl_mark.-system::before {
  border-bottom-color: #5e65ba;
}
.sliderCtl_mark:hover {
  border-radius: 19px 30px 30px;
  max-width: 190px;
  max-height: 50px;
  z-index: 30;
}
.sliderCtl_mark:hover .sliderCtl_markContents {
  opacity: 1;
}

.sliderCtl_markOverflow {
  width: 100%;
  height: 100%;
  padding: 10px;
  overflow: hidden;
}

.sliderCtl_markContents {
  transition: opacity 300ms;
  max-width: 150px;
  opacity: 0;
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sliderCtl_label {
  display: inline-block;
  position: absolute;
  text-align: center;
  font-weight: bold;
  font-size: 12px;
  opacity: 0.7;
  width: 50px;
  margin-left: -25px;
}

.range_pair,
.range {
  --thumb-size: 25px;
  --track-height: 6px;
  --track-color: #dde2ea;
  --thumb-color: #fff;
  --span-color: #3ea1ed;
  height: max(var(--track-height), var(--thumb-size));
  margin-block-start: 0;
  margin-block-end: 0;
  position: relative;
}
.device.-touch .range_pair,
.device.-touch .range {
  --thumb-size: 35px;
}
.range_pair.-tall,
.range.-tall {
  --track-height: 12px;
}
.range_pair.-dark, .range_pair.-dark .range,
.range.-dark,
.range.-dark .range {
  --track-color: #111;
}

.range {
  appearance: none;
  background-color: transparent;
}
.range:-moz-focusring {
  outline: none;
  outline-offset: -1px;
}
.range.-centeredThumb {
  margin-left: calc(var(--thumb-size) * -0.5);
  width: calc(var(--thumb-size) + 100%);
}
.range_pair .range {
  pointer-events: none;
}

.range_spanContainer,
.range_pair .range {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}

.range.-dark::-webkit-slider-runnable-track,
.range_pair.-dark::before {
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.3);
}

.range::-webkit-slider-runnable-track,
.range_pair::before {
  appearance: none;
  background: var(--track-color);
  border-radius: calc(0.5 * var(--thumb-size));
  height: var(--track-height);
}

.range::-webkit-slider-runnable-track {
  left: 0;
  right: 0;
}

.range_pair::before {
  left: 0;
  right: 0;
  content: "";
  display: block;
  position: absolute;
  z-index: 0;
  top: calc((100% - var(--track-height)) / 2);
}

.range_pair.-centeredThumb::before {
  left: calc(-0.5 * var(--thumb-size));
  right: calc(-0.5 * var(--thumb-size));
}

.range::-moz-range-track,
.range_pair::before {
  appearance: none;
  background: var(--track-color);
  border-radius: calc(0.5 * var(--thumb-size));
  height: var(--track-height);
  position: absolute;
}

.range::-moz-range-track {
  left: calc(-0.5 * var(--thumb-size));
  right: calc(-0.5 * var(--thumb-size));
}

.range.-dark::-moz-range-track,
.range_pair.-dark::before {
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.3);
}

.range_pair .range::-webkit-slider-runnable-track {
  pointer-events: none;
  box-shadow: none;
  background-color: transparent;
}

.range_pair .range::-moz-range-track {
  pointer-events: none;
  box-shadow: none;
  background-color: transparent;
}

.range::-webkit-slider-thumb {
  pointer-events: auto;
  transition: box-shadow 50ms;
  background-color: var(--thumb-color);
  border: none;
  margin: 0;
  border-radius: var(--thumb-size);
  height: var(--thumb-size);
  width: var(--thumb-size);
  box-shadow: 0 0 0 1px #000;
  box-shadow: inset 0 0 0 1px #afb4bd, 0 1px 2px #535a7159;
  -webkit-appearance: none;
  margin-top: calc((var(--thumb-size) - var(--track-height)) / -2);
}

.range:hover::-webkit-slider-thumb {
  box-shadow: inset 0 0 0 1px #3ea1ed, 0 0 0 2px rgba(62, 161, 237, 0.4);
}

.range:focus::-webkit-slider-thumb {
  box-shadow: inset 0 0 0 1px #3ea1ed, 0 0 0 3px rgba(62, 161, 237, 0.6);
}

.range:active::-webkit-slider-thumb {
  box-shadow: 0 1px 2px #3338486b;
  background-color: var(--span-color);
}

.range::-moz-range-thumb {
  box-shadow: inset 0 0 0 1px #afb4bd, 0 1px 2px #535a7159;
  pointer-events: auto;
  transition: box-shadow 50ms;
  background-color: var(--thumb-color);
  border: none;
  margin: 0;
  border-radius: var(--thumb-size);
  height: var(--thumb-size);
  width: var(--thumb-size);
  box-shadow: 0 0 0 1px #000;
  -moz-appearance: none;
}

.range:hover::-moz-range-thumb {
  box-shadow: inset 0 0 0 1px #3ea1ed, 0 0 0 2px rgba(62, 161, 237, 0.4);
}

.range:focus::-moz-range-thumb {
  box-shadow: inset 0 0 0 1px #3ea1ed, 0 0 0 3px rgba(62, 161, 237, 0.6);
  outline: none;
}

.range:active::-moz-range-thumb {
  box-shadow: 0 1px 2px #3338486b;
  background-color: var(--span-color);
}

.range_span {
  background: var(--span-color);
  height: var(--track-height);
  top: calc((100% - var(--track-height)) / 2);
  position: absolute;
  z-index: 0;
}
.range_span.-left {
  left: calc(-0.5 * var(--thumb-size)) !important;
  border-radius: calc(0.5 * var(--thumb-size)) 0 0 calc(0.5 * var(--thumb-size));
}
.range_span.-right {
  right: calc(-0.5 * var(--thumb-size)) !important;
  border-radius: 0 calc(0.5 * var(--thumb-size)) calc(0.5 * var(--thumb-size)) 0;
}

.contextMenu_items {
  display: flex;
  flex-direction: column;
  row-gap: 5px;
  align-items: stretch;
  border-radius: 10px;
  padding: 5px;
  background-color: #fff;
  width: 230px;
}
.device.-keyboard .contextMenu_items:focus, .device.-keyboard .contextMenu_items.-focus {
  box-shadow: 0 0 0 1px #3ea1ed, 0 0 0 3px rgba(62, 161, 237, 0.5);
}
.device.-keyboard .contextMenu_items:focus .contextMenu_item.-targeted, .device.-keyboard .contextMenu_items.-focus .contextMenu_item.-targeted {
  background-color: #3ea1ed;
  color: #fff;
}
.device.-keyboard .contextMenu_items:focus .contextMenu_item.-targeted .mycon, .device.-keyboard .contextMenu_items.-focus .contextMenu_item.-targeted .mycon {
  background-position-x: right;
  filter: none;
  filter: none;
}

.contextMenu_item {
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  display: flex;
  margin: 0;
  min-height: 35px;
  align-items: center;
  border-radius: 5px;
  border: none;
  background: transparent;
  text-align: left;
  color: #186ed8;
}
.contextMenu_item.-targeted {
  background-color: rgba(24, 110, 216, 0.1);
}
.contextMenu_item:active, .contextMenu_item.-active {
  background-color: #333;
  color: #fff;
}
.contextMenu_item:active .mycon, .contextMenu_item.-active .mycon {
  background-position-x: right;
  filter: none;
  filter: none;
}

.contextMenu_itemIcon,
.contextMenu_itemText {
  display: inline-block;
  vertical-align: middle;
}

.contextMenu_itemIcon {
  justify-self: flex-start;
  flex: 30px 0 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 30px;
  margin-right: 5px;
}

.contextMenu_itemText {
  line-height: 1.4em;
}

.radioGroup {
  box-shadow: inset 0 1px 1px 0 rgba(0, 0, 0, 0.3), inset 0 -1px 1px 0 rgba(255, 255, 255, 0.3);
  border-radius: 8px;
  position: relative;
  padding: 4px 2px;
  margin: 0;
  background: rgba(0, 0, 0, 0.1);
  display: flex;
  line-height: 28px;
}

.radioGroup_option {
  border-radius: 5px;
  flex-grow: 1;
  flex-shrink: 1;
  display: inline-flex;
  justify-content: center;
  align-content: center;
  flex-direction: column;
  min-height: 40px;
  line-height: 40px;
  position: relative;
  padding: 0 15px;
  vertical-align: middle;
  text-align: center;
  margin: 0 2px;
  min-width: 70px;
}
.radioGroup_option::before {
  border-radius: 100%;
  position: absolute;
  top: 14px;
  left: 4px;
  height: 10px;
  width: 10px;
  background-color: #ccc;
  border-bottom: 1px solid #fff;
}
.radioGroup_option > i {
  vertical-align: middle;
  margin: 0 auto;
}

.radioGroup_input {
  position: absolute;
  left: -200000px;
}

.radioGroup_container {
  margin-right: 10px;
}

.searchUg {
  --bg-color: #333;
  --fg-color: #eee;
  --control-color: #222;
  --button-color: #555;
  --separator-color: #111;
  background: var(--bg-color);
  font-size: 14px;
  text-align: center;
  color: var(--fg-color);
  margin: 0 auto;
  border: 1px solid transparent;
  font-weight: lighter;
}
.searchUg.-light {
  --bg-color: #fff;
  --control-color: #e8eaf2;
  --button-color: #fff;
  --separator-color: #e8eaf2;
  --fg-color: #333;
}

.searchUg_group {
  padding: 10px;
}
.searchUg_group.-limit {
  background: var(--control-color);
  padding: 5px 10px;
}
.searchUg.-light .searchUg_group.-limit {
  border-bottom: 1px solid var(--separator-color);
  background: none;
}

.searchUg_listHeader {
  color: var(--fg-color);
  font-size: 0.875rem;
  text-align: left;
  font-weight: lighter;
  margin-right: 20px !important;
}

.searchUg_list,
.searchUg_listItem,
.searchUg_grid {
  list-style: none;
  margin: 0;
  padding: 0;
}

.searchUg_list {
  display: flex;
  column-gap: 1rem;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
}

.searchUg_listItem {
  min-width: 60px;
}

.searchUg_grid {
  display: grid;
  column-gap: 0.75rem;
  row-gap: 0.75rem;
  align-items: stretch;
  justify-content: center;
  grid-template-columns: repeat(4, 1fr);
}

.searchUg_toggle, .searchUg_tabButton, .searchUg_labelledCheckbox {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.searchUg_labelledCheckbox.-vertical {
  flex-direction: column;
  font-size: 1.1875rem;
  margin: 0 10px;
}

.searchUg_tabButton {
  width: 80px;
  white-space: normal;
  flex-direction: column;
  justify-content: space-around;
  min-height: 40px;
  column-gap: 5px;
  cursor: pointer;
  padding: 0.25rem 0.5rem;
  border-radius: 5px;
  font-size: 0.875rem;
  margin-bottom: 15px;
  color: var(--fg-color);
  border: 0;
}
.searchUg_tabButton.-selected {
  background: #111;
  color: #eee;
  box-shadow: none;
}
.searchUg_tabButton.-selected .fIcon {
  background-position-x: right;
}
.searchUg_tabButton.-selected::after {
  display: block;
  position: absolute;
  content: "";
  border-bottom: 10px solid var(--separator-color);
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  left: calc(50% - 10px);
  top: calc(100% + 5px);
}
.searchUg_tabButton:focus, .searchUg_tabButton.-selected:focus {
  outline: none;
}
.searchUg.-light .searchUg_tabButton:focus, .searchUg.-light .searchUg_tabButton.-selected:focus {
  outline: none;
}

.searchUg_buttonIcon {
  flex: 0 0 auto;
  margin-bottom: 2px;
}

.searchUg_toggle, .searchUg_tabButton {
  border-radius: 5px;
  background: var(--button-color);
  cursor: pointer;
}

.searchUg_controls {
  min-height: 140px;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: center;
  padding: 10px;
  border-top: 3px solid var(--separator-color);
}

.searchUg_sliderDisplay {
  background: #fff;
  font-size: 1.1875rem;
  padding: 5px 10px;
  border-radius: 2px;
  color: #000;
  max-width: 200px;
  margin: 0 auto 10px;
}

.searchUg_toggle {
  justify-content: stretch;
}

.searchUg_toggleLabel {
  height: 100%;
  display: flex;
  align-items: center;
  text-align: left;
  flex-grow: 1;
}

.searchUg_subGroup {
  flex: 0 1 auto;
  margin: 0 10px;
  background: var(--control-color);
  padding: 10px;
  border-radius: 10px;
}

.searchUg_groupHeader {
  margin-bottom: 1em;
  font-size: 1.1875rem;
}

.announcement {
  --announcement-color: #fcb04f;
  background: #fff;
  border: 2px solid var(--announcement-color);
  border-radius: 10px;
  position: relative;
  line-height: 1.3em;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-auto-rows: auto;
  text-align: left;
}
.announcement::before, .announcement::after {
  display: none;
}

.announcement.-inContent {
  box-shadow: 0 2px 3px rgba(0, 0, 0, 0.1);
  margin: 10px;
}

.announcement.-clear {
  --announcement-color: transparent;
}
.announcement.-clear .announcement_icon {
  display: none;
}

.announcement.-pointOut {
  --announcement-color: var(--theme-color);
  max-width: 300px;
}

.announcement.-demo {
  --announcement-color: #9ed6f2;
  grid-template-columns: 25px 1fr;
}

.announcement.-modal {
  box-shadow: 0 10px 50px -10px rgba(0, 0, 0, 0.5), 0 20px 100px rgba(0, 0, 0, 0.3);
  margin: 0 auto;
  min-height: 100px;
}

.announcement.-tooltip {
  border: none;
}

.announcement_icon {
  border-radius: 8px 0 0 8px;
  background-color: var(--announcement-color);
  grid-row: 1/4;
  grid-column: 1;
  display: flex;
  align-items: flex-start;
  padding: 5px;
}
.announcement.-demo .announcement_icon::before {
  content: "";
  background: url("https://assets.myon.com/img/svg/thinker.svg?c=7a37f70b61") no-repeat;
  background-size: contain;
  width: 35px;
  height: 35px;
  display: block;
  border: 1px solid #fff;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
  border-radius: 35px;
  position: absolute;
  left: -7px;
}

.announcement_bell {
  transform-origin: 9px 0;
}
.announcement:hover .announcement_bell {
  animation: ringing-bell 2s 1;
}

.announcement_title,
.announcement_body,
.announcement_actions {
  grid-column: 2;
  padding: 0.75em 1em;
}
.announcement_title + .announcement_title,
.announcement_title + .announcement_body,
.announcement_title + .announcement_actions,
.announcement_body + .announcement_title,
.announcement_body + .announcement_body,
.announcement_body + .announcement_actions,
.announcement_actions + .announcement_title,
.announcement_actions + .announcement_body,
.announcement_actions + .announcement_actions {
  padding-top: 0;
}

.announcement_title {
  font-weight: bold;
  font-size: 1.1875rem;
  margin: 0;
}

.announcement_body {
  font-size: 1rem;
}
.announcement_title + .announcement_body {
  margin: 0 0 0 1em;
}

.announcement_list {
  margin-bottom: 20px;
}

.select {
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2216%22%20height%3D%2210%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m8%206%204.984-4.984c.673-.68%201.345-.687%202.013-.019.669.669.673%201.333.014%201.992L8%2010%201.01%203.01C.337%202.337.33%201.67.993%201.007c.662-.662%201.334-.66%202.017.003L8%206Z%22%20fill%3D%22%23186ed8%22%2F%3E%3C%2Fsvg%3E);
  appearance: none;
  --arrow-width: 20px;
  --padding: 10px;
  --height: 35px;
  --font-size: 15px;
  border-radius: 5px;
  height: var(--height);
  font-size: var(--font-size);
  line-height: var(--height);
  max-width: calc(100% - 6px);
  border: none;
  background-color: #fff;
  padding: 0 calc(var(--padding) + var(--arrow-width)) 0 var(--padding);
  position: relative;
  background-position: calc(100% - 7px);
  cursor: pointer;
  background-repeat: no-repeat;
  margin: 3px;
  flex-shrink: 0;
}
.select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}
.select:focus {
  outline: none;
}
.select:disabled, .select.-disabled {
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2216%22%20height%3D%2210%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m8%206%204.984-4.984c.673-.68%201.345-.687%202.013-.019.669.669.673%201.333.014%201.992L8%2010%201.01%203.01C.337%202.337.33%201.67.993%201.007c.662-.662%201.334-.66%202.017.003L8%206Z%22%20fill%3D%22%23bbb%22%2F%3E%3C%2Fsvg%3E);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0.7);
  pointer-events: none;
  color: #999;
  cursor: not-allowed;
  background-color: #eee;
}
.select.-tight {
  width: auto;
}
.select.-medium {
  width: 140px;
}
.select.-small {
  width: 80px;
}
.select.-inline {
  --height: 24px;
  --padding: 0.5em;
  margin: 0;
}
.select.-noMargin {
  width: 100%;
  max-width: 100%;
  margin: 0;
}

.search {
  position: relative;
  transition: margin-bottom 400ms;
  --height-placeholder: 400px;
}
.search.-expanded {
  margin-bottom: var(--height-placeholder);
}
.search.-expanded::before {
  display: block;
  content: "";
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-bottom: 10px solid #333;
  position: absolute;
  top: 100%;
  left: 22px;
}
.search.-search-page {
  background: #3aaee6;
}
.search.-browse-page {
  --height-placeholder: 200px;
}

.search_bar {
  height: 60px;
  position: relative;
  padding: 0 10px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
}
.search.-browse-page .search_bar {
  background: #84ccb2;
}
.search_bar::before {
  display: none;
}

.search_queryInfo,
.search_filterDisplay,
.search_main,
.search_resultMeta {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.search_queryInfo > *,
.search_filterDisplay > *,
.search_main > *,
.search_resultMeta > * {
  margin-left: 10px;
}
.search_queryInfo > :first-child,
.search_filterDisplay > :first-child,
.search_main > :first-child,
.search_resultMeta > :first-child {
  margin-left: 0;
}

.search_resultMeta {
  justify-content: flex-end;
}

.search_resultCount {
  text-align: center;
  line-height: 30px;
  font-size: 24px;
  font-weight: bold;
  width: 180px;
  padding: 5px;
  background: #fff;
  border-radius: 20px;
}

.search_popup {
  transition: max-height 400ms;
  background: #333;
  color: #eee;
  position: absolute;
  overflow: hidden;
  top: calc(100% + 10px);
  left: 0;
  width: 100%;
  margin: 0;
  max-height: var(--height-placeholder);
  border-radius: 8px;
}
.search:not(.-expanded) .search_popup {
  max-height: 0;
}

.search_reset-button {
  position: absolute;
  right: 15px;
  top: 15px;
}

.search_filter-option {
  flex: 0 2 110px;
  background: linear-gradient(145deg, #767676 0%, #666 100%);
  text-align: center;
  color: #fff;
  height: 110px;
}
.search_filter-option img {
  height: 80px;
}
.search_filter-option.-filter-graphic, .search_filter-option.-filter-fiction, .search_filter-option.-filter-nonfiction {
  min-width: 110px;
  flex: 0 1 130px;
}

.search_filter-icon {
  background: #fff;
  width: 40px;
}
.search_filter-icon.-filter-fiction {
  background: #de9a4e;
}
.search_filter-icon.-filter-nonfiction {
  background: #5abede;
}
.search_filter-icon.-filter-graphic {
  background: #3ebb8f;
}
.search_filter-icon.-filter-search {
  background: #ea16ed;
}
.search_filter-icon.-filter-fiction {
  background: #7231ac;
}
.search_filter-icon.-filter-lexile {
  background: #0a5892;
}
.search_filter-icon.-filter-atos {
  background: #3aaee6;
}
.search_filter-icon.-filter-guidedReading {
  background: #7bc435;
}
.search_filter-icon.-filter-gradeLevel {
  background: #ccb627;
}
.search_filter-icon.-filter-length {
  background: #fd8424;
}
.search_filter-icon.-filter-audio {
  background: #fd8424;
}
.search_filter-icon.-filter-language {
  background: #ea0b18;
}
@media only screen and (max-width: 1200px) {
  .search_filter-icon.-search-page {
    margin-right: -3px !important;
    margin-left: 0 !important;
    transform: scale(0.9);
  }
}
@media only screen and (max-width: 768px) {
  .search_filter-icon.-search-page {
    margin-right: -3px !important;
    margin-left: -12px !important;
    transform: scale(0.6);
  }
}

.input {
  appearance: none;
  font-size: 15px;
  line-height: 24px;
  padding: 5.5px 10px;
  height: 35px;
  border-radius: 3px;
  transition: box-shadow 50ms;
  border: none;
}
.input.-search {
  border-radius: 17.5px;
}
.input:focus {
  outline: none;
}
.input::placeholder {
  font-style: italic;
  color: #767676;
  opacity: 1;
}
.input.-big {
  width: 350px;
  font-size: 19px;
  line-height: 30.4px;
  padding: 4.8px 10px;
  height: 40px;
}
.input.-big.-search {
  border-radius: 20px;
}
.input.-h1 {
  min-width: 0;
  background: transparent;
  border-bottom: 1px solid #666;
  border-radius: 0;
  box-shadow: none;
  margin: 0.25em 0;
  font-weight: bold;
  line-height: 1.2em;
  padding: 0.25em;
  height: 1.7em;
  font-size: 1.625rem;
}
.input.-h1::placeholder {
  font-style: normal;
  font-weight: normal;
}
.input::-moz-focus-inner {
  border: none;
}
.input.-disabled, .input:disabled {
  opacity: 0.7;
}
.input.-compact {
  width: 100px;
}
.input.-numberInline {
  font-size: 15px;
  line-height: 24px;
  padding: 3px 5px;
  height: 30px;
  width: 50px;
  margin: 3px;
}
.input.-numberInline.-search {
  border-radius: 15px;
}
.input.-dark {
  background-color: rgba(0, 0, 0, 0.2);
  color: #fff;
}
.input.-dark:focus {
  background-color: #fff;
  color: #222;
}
.input.-dark::placeholder {
  color: rgba(255, 255, 255, 0.5);
}
.input.-search, .input.-login {
  padding-left: 14px;
  padding-right: 14px;
}
.input.-search-icon {
  padding-right: 36px;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M11.8%209.93%2015.78%2014a1.13%201.13%200%200%201-.2%201.53%201.43%201.43%200%200%201-1.67.34L9.86%2011.8a6.42%206.42%200%200%200%201.93-1.87ZM6%200c3%200%206%202%206%206a6%206%200%201%201-6-6Zm4%206a4%204%200%201%200-8.01%200%204%204%200%200%200%208%200Z%22%20fill%3D%22%23186ed8%22%20fill-rule%3D%22nonzero%22%2F%3E%3C%2Fsvg%3E);
  background-position: right 10px center;
  background-repeat: no-repeat;
}
.input.-textarea {
  resize: vertical;
  min-height: 60px;
}
.input.-login {
  font-size: 16px;
  line-height: 24px;
  padding: 6px 10px;
  height: 36px;
  width: 100%;
}
.input.-login.-search {
  border-radius: 18px;
}
.input.-hasButton {
  display: block;
  width: calc(100% - 10px);
}
.input.-readonly {
  box-shadow: inset 0 0 0 3px #e8eaf2;
}

.info {
  --background-color: #fff;
  --foreground-color: #222;
  --theme-color: #5658b7;
  --border-color: #bbb;
  --border-width: 1px;
  --arrow-size: 10px;
  --arrow-bg-size: var(--arrow-size);
  --gutter: 0.75em;
  position: absolute;
  min-width: 120px;
  max-width: 300px;
  padding: var(--arrow-size);
  z-index: 1000;
  transition: transform 300ms, opacity 300ms;
}
.info.-fixed {
  position: fixed;
}
.info.-reader, .info.-lc {
  --background-color: #186ed8;
  --foreground-color: #fff;
  --border-color: #186ed8;
  max-width: none;
  min-width: 0;
}
.info.-reader .info_contents, .info.-lc .info_contents {
  padding: 10px;
}
.info.-wide {
  max-width: 400px;
  width: 400px;
}
.info.-control-descr {
  max-width: 300px;
  width: 300px;
}
.info.-control-descr .info_contents {
  font-size: 0.875rem;
  padding: 1em;
}
.info.-hidden {
  opacity: 0;
  display: none;
}
.info.-hidden.-left {
  transform: translateX(30px) scale(0.95);
}
.info.-hidden.-right {
  transform: translateX(-30px) scale(0.95);
}
.info.-hidden.-above {
  transform: translateY(10px) scale(0.95);
}
.info.-hidden.-below {
  transform: translateY(-10px) scale(0.95);
}
.info.-animate {
  display: block;
  pointer-events: none;
}
.info .info_contents::before {
  --background-color: var(--border-color);
  --arrow-bg-size: calc(var(--border-width) * 2 + var(--arrow-size));
}
.info .info_contents::before,
.info .info_contents::after {
  content: "";
  display: block;
  position: absolute;
  pointer-events: none;
  border: var(--arrow-bg-size) solid transparent;
}
.info.-above.-end, .info.-below.-end {
  margin-left: var(--arrow-size);
}
.info.-above.-start, .info.-below.-start {
  margin-left: calc(-1 * var(--arrow-size));
}
.info.-above.-start .info_contents::after, .info.-above.-start .info_contents::before, .info.-below.-start .info_contents::after, .info.-below.-start .info_contents::before {
  left: 25px;
  margin-left: calc(-1 * var(--arrow-bg-size));
}
.info.-above.-end .info_contents::after, .info.-above.-end .info_contents::before, .info.-below.-end .info_contents::after, .info.-below.-end .info_contents::before {
  right: 25px;
  margin-right: calc(-1 * var(--arrow-bg-size));
}
.info.-above.-center .info_contents::after, .info.-above.-center .info_contents::before, .info.-below.-center .info_contents::after, .info.-below.-center .info_contents::before {
  left: 50%;
  margin-left: calc(-1 * var(--arrow-bg-size));
}
.info.-right .info_contents::after, .info.-right .info_contents::before, .info.-left .info_contents::after, .info.-left .info_contents::before {
  top: 50%;
  margin-top: calc(-1 * var(--arrow-bg-size));
}
.info.-above .info_contents {
  transform-origin: bottom center;
}
.info.-above .info_contents::after, .info.-above .info_contents::before {
  border-top-color: var(--background-color);
  top: 100%;
}
.info.-left .info_contents {
  transform-origin: center;
}
.info.-left .info_contents::after, .info.-left .info_contents::before {
  border-left-color: var(--background-color);
  left: 100%;
}
.info.-below .info_contents {
  transform-origin: top center;
}
.info.-below .info_contents::after, .info.-below .info_contents::before {
  border-bottom-color: var(--background-color);
  bottom: 100%;
}
.info.-right .info_contents {
  transform-origin: left;
}
.info.-right .info_contents::after, .info.-right .info_contents::before {
  border-right-color: var(--background-color);
  right: 100%;
}
.info.-infoNotice {
  --border-color: #9ed6f2;
  --border-width: 2px;
  max-width: none;
}
.info.-medium {
  min-width: 300px;
}
.info.-myList {
  --theme-color: #9ed6f2;
}
.info.-onboarding {
  --border-color: #fff;
  --theme-color: #5658b7;
  --border-width: 2px;
  max-width: none;
}
.info.-controlBandNotice {
  max-width: 400px;
}

.info_contents {
  position: relative;
  border-radius: 10px;
  box-shadow: 0 0 0 var(--border-width) var(--border-color), 0 1px 3px 0 rgba(0, 0, 0, 0.4), 0 5px 15px -5px rgba(71, 97, 140, 0.7);
  background: var(--background-color);
  color: var(--foreground-color);
  font-size: 1rem;
}
.info.-tooltip .info_contents {
  padding: 5px 15px;
  word-wrap: break-word;
}

.imgselect_checkbox {
  position: absolute;
  top: -20px;
  left: -2000000px;
}
.device.-keyboard .imgselect_checkbox:focus + .imgselect_avatar > .imgselect_avatarImg, .device.-keyboard .imgselect_checkbox.-focus + .imgselect_avatar > .imgselect_avatarImg {
  box-shadow: 0 0 0 6px #3ea1ed;
  opacity: 1;
}

.imgselect_avatarImg {
  border-radius: 3px;
  box-shadow: 0 1px 3px #123242;
  width: 100%;
  display: block;
}
.imgselect_avatar:hover .imgselect_avatarImg {
  box-shadow: 0 0 0 3px rgba(62, 161, 237, 0.5);
  opacity: 1;
}
.imgselect_checkbox:checked + .imgselect_avatar > .imgselect_avatarImg {
  box-shadow: 0 0 0 3px #3ea1ed;
}

.imgselect_item {
  position: relative;
}

.imgselect_avatar {
  border-radius: 3px;
  width: 100%;
  cursor: pointer;
  overflow: hidden;
}
.imgselect_avatar::before, .imgselect_avatar::after {
  transition: opacity 200ms, transform 200ms;
  border-radius: 100%;
  pointer-events: none;
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  display: block;
  opacity: 0;
}
.imgselect_avatar::before {
  background-color: #fff;
  width: 120px;
  height: 120px;
  margin-left: -60px;
  margin-top: -60px;
}
.imgselect_checkbox:checked + .imgselect_avatar::before {
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2216%22%20viewBox%3D%220%201%2020%2016%22%20width%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m.5%208.5%207%207%2012-12-3-3-9%209-4-4z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
  background-size: 75%;
  animation: material-click-in 1300ms;
}
.imgselect_avatar::after {
  background-color: #3ea1ed;
  margin-left: -20px;
  margin-top: -20px;
  width: 40px;
  height: 40px;
}
.imgselect_checkbox:checked + .imgselect_avatar::after {
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2216%22%20viewBox%3D%220%201%2020%2016%22%20width%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m.5%208.5%207%207%2012-12-3-3-9%209-4-4z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
  background-size: 75%;
  animation: spin-grow-in 400ms;
  opacity: 1;
}

.radio {
  appearance: none;
  border-radius: 100%;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  background-color: #fff;
  text-align: center;
  line-height: 24px;
  border: none;
  cursor: pointer;
  vertical-align: middle;
  margin: 3px 5px;
}
.radio.-check {
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2216%22%20viewBox%3D%220%201%2020%2016%22%20width%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m.5%208.5%207%207%2012-12-3-3-9%209-4-4z%22%20fill%3D%22%23dfeaf0%22%2F%3E%3C%2Fsvg%3E);
  background-size: 75%;
  width: 30px;
  height: 30px;
}
.radio.-check:checked, .radio.-check.-checked {
  background: #186ed8;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2216%22%20viewBox%3D%220%201%2020%2016%22%20width%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m.5%208.5%207%207%2012-12-3-3-9%209-4-4z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
  background-size: 75%;
}
.radio.-check:checked::before, .radio.-check.-checked::before {
  display: none;
}
.radio.-check:checked.-disabled, .radio.-check:checked:disabled, .radio.-check.-checked.-disabled, .radio.-check.-checked:disabled {
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20height%3D%2216%22%20viewBox%3D%220%201%2020%2016%22%20width%3D%2220%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22m.5%208.5%207%207%2012-12-3-3-9%209-4-4z%22%20fill%3D%22%23767676%22%2F%3E%3C%2Fsvg%3E);
  background-size: 75%;
}
.device.-touch .radio {
  width: 30px;
  height: 30px;
}
.radio:checked::before, .radio.-checked::before {
  border-radius: 100%;
  box-shadow: inset 0 0 0 7px #186ed8;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
}
.radio:focus {
  outline: none;
}
.radio.-disabled, .radio:disabled {
  box-shadow: 0 0 0 1px #ccc;
  cursor: not-allowed;
  background: #f5f5f5;
}
.radio.-disabled::before, .radio:disabled::before {
  box-shadow: inset 0 0 0 7px #767676;
}
.radio.-disabled:checked, .radio:disabled:checked {
  background: #f5f5f5;
}

.header_button.-sub::after {
  border-radius: 3px;
  position: absolute;
  content: "";
  height: 3px;
  left: 10px;
  right: 10px;
  bottom: 0;
  transform: scale(0, 1);
  opacity: 0;
  transition: transform 300ms, opacity 300ms;
}

.header_button.-sub:hover::after, .header_button.-sub:focus::after {
  opacity: 0.7;
  transform: scale(0.8, 1);
}

.header_button.-sub:active::after, .header_button.-sub.-current::after {
  opacity: 1;
  transform: none;
}

.header {
  position: relative;
  background: #5658b7;
  border-bottom: 3px solid #333586;
}
.header.-expanded {
  margin-bottom: 60px;
  border-bottom: none;
}

.header_item, .header_items, .header_button, .header_labelledIcon.-scrolling, .header_labelledIcon {
  display: flex;
  align-items: center;
  list-style: none;
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
}

.header_button, .header_labelledIcon.-scrolling, .header_labelledIcon {
  justify-content: center;
}
.header_button > *, .header_labelledIcon.-scrolling > *, .header_labelledIcon > * {
  margin-left: 5px;
  margin-right: 5px;
}

.header_labelledIcon.-scrolling {
  height: 100%;
  position: relative;
  justify-content: center;
}

.header_items.-sub {
  justify-content: flex-start;
}

.header_item.-top {
  align-items: stretch;
  height: 70px;
  flex: 0 1 150px;
}
.header_item.-sub {
  height: 60px;
  flex-basis: auto;
  padding: 0 0.5em;
}
.header_item.-logout, .header_item.-app {
  flex: 0 0 50px;
}
.header_item.-bookBag {
  flex: 0 0 70px;
}
.header_item.-app {
  margin-left: 10px;
}
@media screen and (max-width: 768px) {
  .layout.-responsive .header_item.-app {
    display: none;
  }
}
.header_item.-spacer {
  flex: 1 0.5 auto;
  justify-content: flex-end;
}
.header_item.-user, .header_item.-admin {
  flex-basis: auto;
  align-items: center;
  padding-left: 5px;
  padding-right: 5px;
  position: relative;
}

.header_demoButton {
  box-shadow: 0 0 0 1px rgba(55, 75, 103, 0.4), 0 2px 4px 0 rgba(16, 19, 23, 0.875);
  background: #186ed8;
  transform: translateY(-2px);
  -webkit-font-smoothing: antialiased;
  min-height: 40px;
  min-width: 40px;
  color: #fff;
  border: 3px solid white;
  font-weight: bold;
  padding: 0 15px;
  background: transparent;
  text-decoration: none;
  border-radius: 5px;
  white-space: nowrap;
  height: 20px;
  align-self: center;
  font-weight: normal;
}
.header_demoButton:hover, input:hover + .header_demoButton.-withInput {
  box-shadow: 0 0 0 2px #2f8aff, 0 4px 6px 0 #374b67;
}
.header_demoButton:active, .header_demoButton:focus:active, input:active + .header_demoButton.-withInput, input:focus:active + .header_demoButton.-withInput {
  transform: translate(0, 0);
  box-shadow: 0 0 0 1px rgba(55, 75, 103, 0.21), 0 0 0 1px #415777, 0 0 0 3px rgba(62, 161, 237, 0.4);
}

.header_button {
  position: relative;
  outline: none;
  color: #fff;
  cursor: pointer;
  flex: 1 0 auto;
  border: none;
  text-decoration: none;
  background: transparent;
  border-radius: 10px;
  transition: all 200ms;
}
.device.-keyboard .header_button:focus, .device.-keyboard .header_button.-focus {
  box-shadow: inset 0 0 0 3px #fff;
}
.header_button.-top {
  overflow: hidden;
  padding: 5px;
  margin: 5px;
}
.header_button.-top:hover, .header_button.-top:focus {
  background-color: #626cd5;
}
.header_button.-top.-current, .header_button.-top:active {
  background: #333586;
}
.header_button.-top.-current {
  margin: 5px 5px 0;
  border-radius: 10px 10px 0 0;
}
.header_button.-emphasis {
  transform: scale(1.2);
}
.header_button.-sub {
  padding: 0.5rem;
  height: 45px;
}
.header_button.-sub::after {
  background: #fff;
}
@media screen and (max-width: 768px) {
  .layout.-responsive .header_button.-sub {
    flex: 0 0 47%;
  }
}
@media screen and (max-width: 850px) {
  .header_button.-sub {
    font-size: 0.875rem;
  }
}
.header_button.-user {
  flex-grow: 0;
  padding: 0;
  max-width: 100%;
}
@media screen and (max-width: 768px) {
  .layout.-responsive .header_button.-user {
    flex: 0 0 70px;
  }
}
.header_button.-logout {
  background: #b23232;
}
.header_button.-logout:hover, .header_button.-logout:focus, .header_button.-logout:active {
  background: #cc4b4b;
}
.header_button.-app {
  background: #09e;
  position: relative;
}
.header_button.-app:hover, .header_button.-app:focus, .header_button.-app:active {
  background: #22b0ff;
}
.header_button.-app, .header_button.-logout {
  margin: 0;
  border-radius: 0;
}
.header_button.-active {
  animation: oversaturate 500ms ease-in-out 300ms alternate-reverse infinite;
}
.header_button.-active .header_appIcon {
  animation: bounce-and-squeeze 500ms ease-in-out alternate-reverse infinite;
}

.header_label {
  color: #fff;
  flex: 1 1 auto;
  text-align: left;
  word-break: break-word;
}

.header_subnav {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 60px;
  background: #333586;
}
.device.-touch .header_subnav {
  font-size: 0.9rem;
}

.header_icon {
  flex-shrink: 0;
  opacity: 0.6;
}
.header_button:hover .header_icon, .header_button:active .header_icon, .header_button.-current .header_icon, .header_button:focus .header_icon {
  opacity: 1;
}
@media screen and (max-width: 700px) {
  .header_item.-sub .header_icon {
    display: none;
  }
}

.header_buttonCounter {
  color: #000;
  position: absolute;
  top: 5px;
  right: 0;
  background: #fa9926;
  font-size: 0.875rem;
  min-width: 1.2rem;
  height: 1.2rem;
  padding: 0 0.25em;
  text-align: center;
  line-height: 1.2rem;
  border-radius: 100%;
  transition: transform 300ms cubic-bezier(0.68, 0, 0.265, 1.55), opacity 300ms;
}
.header_buttonCounter.-hidden {
  opacity: 0;
  transform: scale(0);
}

@media screen and (max-width: 1000px) {
  .header_item.-library,
.header_item.-news,
.header_item.-projects,
.header_item.-admin {
    flex-basis: auto;
  }

  .header_labelledIcon.-scrolling {
    width: 100%;
    flex-direction: column;
    justify-content: flex-start;
  }
  .header_labelledIcon.-scrolling > * {
    transition: transform 300ms;
    flex: 0 0 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 100%;
    font-size: 0.875rem;
  }
  .header_button:hover .header_labelledIcon.-scrolling > * {
    transform: translate(0, -100%);
  }
}
@media screen and (max-width: 800px) {
  .header_renLogo {
    object-fit: cover;
    object-position: left;
    width: 40px;
  }

  .header_item.-dashboard {
    flex-basis: 70px;
  }
}
.headerFlyout {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 10000;
}
.headerFlyout:not(.-selected) {
  display: none;
}

.headerFlyout_popup {
  position: absolute;
}

@keyframes fly-in-top {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.headerFlyout::after {
  content: "";
  border: 10px solid transparent;
  border-bottom-color: #fff;
  position: absolute;
  bottom: 100%;
  right: 25px;
}

.headerFlyout::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(39, 51, 62, 0.4);
  z-index: -1;
}

.headerFlyout_items,
.headerFlyout_item {
  list-style: none;
  padding: 0;
  margin: 0;
}

.headerFlyout_item {
  border-bottom: 1px solid #d6d6d6;
}
.headerFlyout_item:last-child {
  border-bottom: none;
}
.headerFlyout_item.-withSeparator {
  border-top: 4px solid #eee;
}

.headerFlyout_items {
  box-shadow: 0 10px 50px -15px #000;
  border-radius: 10px;
  background: #fff;
  overflow: hidden;
  text-align: left;
}

.headerFlyout.-selected .headerFlyout_items,
.headerFlyout.-selected::after {
  animation: fly-in-top 300ms;
}

.headerFlyout_icon {
  flex: 0 0 45px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.headerFlyout_target {
  display: flex;
  align-items: center;
  column-gap: 10px;
  text-decoration: none;
  color: #186ed8;
  background: #fff;
  border: none;
  margin: 0;
  cursor: pointer;
  width: 100%;
  min-height: 40px;
  padding: 5px 10px;
}
.headerFlyout_target:hover {
  background-color: #f2f5fb;
}
.device.-keyboard .headerFlyout_target:focus, .device.-keyboard .headerFlyout_target.-focus {
  background-color: #f2f5fb;
  box-shadow: inset 0 0 0 3px #186ed8;
}

.headerFlyout_title {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  width: 160px;
  text-align: left;
  word-break: break-word;
}
.headerFlyout_title.-info {
  font-weight: bold;
}

.headerFlyout_info {
  padding: 10px;
  min-height: 40px;
}

.headerFlyout_subTitle {
  font-size: 0.75rem;
}

.headerFlyout_button {
  color: #fff;
  background: #5658b7;
  margin: 10px;
}

.bookCategory {
  text-align: center;
  text-decoration: none;
  list-style: none;
  min-height: 45px;
  margin: 5px;
}
.bookCategory.-admin {
  background-color: #fff;
}

.bookCategory_count {
  border-radius: 3px;
  background: #186ed8;
  color: #fff;
  padding: 3px;
  margin: 0 2px 2px;
}

.bookCategory_title {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0 10px 10px;
  color: #333;
}
.bookCategory_title.-admin {
  color: #186ed8;
  padding: 0;
}
.bookCategory.-selected .bookCategory_title.-admin {
  color: #fff;
}

.bookCategory_imgContainer {
  width: 98px;
  height: 98px;
  margin: 10px auto;
  border-radius: 100%;
  border: 3px solid #fff;
  box-shadow: 0 0 1px #aaa;
}

.bookCategory_img {
  width: 100%;
}
.bookCategory:hover .bookCategory_img {
  animation: emphasize-scale-rotate 400ms 1;
}

.bookCategory_list {
  --gutter: 1rem;
  padding-bottom: 2rem;
}

.banner3d {
  max-width: 1200px;
  width: 100%;
  position: relative;
  overflow: hidden;
  display: block;
}
.banner3d.-no-scroll .banner3d_arrow,
.banner3d.-no-scroll .banner3d_thumbnails {
  display: none;
}
.banner3d img {
  pointer-events: none;
}

.banner3d_layers {
  width: 100%;
  max-height: 386.6666666667px;
  min-height: 242.6666666667px;
  height: calc(( 100vw - 40px ) / 3);
  position: relative;
  display: block;
  background: #333;
  z-index: 8;
  transform-origin: top left;
}
.banner3d_layers > * {
  pointer-events: none;
}
.banner3d_layers [data-panel] {
  position: absolute;
}
.banner3d_layers.-ready [data-panel] {
  transition: transform 200ms, opacity 200ms;
}
.banner3d_layers.-ready [data-book-id] {
  cursor: pointer;
  pointer-events: auto;
}
.banner3d_layers.-ready [data-book-id]:hover, .banner3d_layers.-ready [data-book-id]:focus {
  transform: scale(1.1) !important;
}
.banner3d_layers.-ready [data-book-id]:active {
  transform: scale(0.9) !important;
  opacity: 0.7;
}
.banner3d_layers.-transitioning [data-panel] {
  transition: transform 1000ms, margin 1000ms, left 1000ms, top 1000ms, bottom 1000ms, right 1000ms;
}
.banner3d_layers.-dragTransitioning [data-panel] {
  transition: transform 300ms, margin 300ms, left 300ms, top 300ms, bottom 300ms, right 300ms;
  transition-timing-function: ease-out;
}

.banner3d_arrow {
  transition: background 200ms;
  position: absolute;
  top: 0;
  height: 100%;
  width: 60px;
  display: block;
  cursor: pointer;
  z-index: 9;
  border: none;
}
.banner3d_arrow.-left {
  background: linear-gradient(90deg, rgba(47, 56, 74, 0.6), rgba(47, 56, 74, 0));
  left: 0;
}
.banner3d_arrow.-left::after {
  border-right: 30px solid #fff;
  left: 10px;
}
.banner3d_arrow.-left:hover, .banner3d_arrow.-left:focus {
  background: linear-gradient(90deg, rgba(62, 161, 237, 0.6), rgba(62, 161, 237, 0.2));
}
.banner3d_arrow.-right {
  background: linear-gradient(270deg, rgba(47, 56, 74, 0.6), rgba(47, 56, 74, 0));
  right: 0;
}
.banner3d_arrow.-right::after {
  border-left: 30px solid #fff;
  right: 10px;
}
.banner3d_arrow.-right:hover, .banner3d_arrow.-right:focus {
  background: linear-gradient(270deg, rgba(62, 161, 237, 0.6), rgba(62, 161, 237, 0.2));
}
.banner3d_arrow::after {
  content: "";
  display: block;
  top: 50%;
  position: absolute;
  margin-top: -30px;
  border-top: 30px solid transparent;
  border-bottom: 30px solid transparent;
}

.banner3d_thumbnailList {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 20px;
  z-index: 9;
  list-style: none;
  display: flex;
  justify-content: center;
  align-items: center;
}

.banner3d_button {
  box-shadow: 0 1px 4px 1px rgba(71, 97, 140, 0.5), 0 0 0 1px rgba(74, 74, 74, 0.35);
  border-radius: 100%;
  transition: transform 200ms;
  transform: scale(1);
  width: 25px;
  cursor: pointer;
  height: 25px;
  display: block;
  border: transparent;
  background: #fff;
  margin: 8px;
  z-index: 10;
}
.banner3d_button:hover, .banner3d_button:focus {
  background: #fff;
  box-shadow: 0 0 0 3px #3ea1ed;
}
.banner3d_button.-current {
  transform: scale(1.4);
}
.banner3d_button:active {
  transform: scale(1);
}
.banner3d_button.-playpause {
  position: absolute;
  bottom: 0;
  left: 10px;
  width: 40px;
  height: 40px;
}
.banner3d_button.-playpause::before, .banner3d_button.-playpause::after {
  transition: border 300ms, width 300ms, height 300ms, top 300ms;
  content: "";
  display: block;
  position: absolute;
  width: 0;
  left: calc(50% - 8px);
  top: 10px;
  border: 0 solid #186ed8;
}
.banner3d_button.-playpause::after {
  left: calc(50% + 2px);
  top: 10px;
}
.banner3d_button.-playpause::before, .banner3d_button.-playpause::after {
  height: 20px;
  border-top: 0 solid transparent;
  border-bottom: 0 solid transparent;
  border-left: 4px solid #186ed8;
}
.banner3d_button.-paused::before, .banner3d_button.-paused::after {
  height: 10px;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 10px solid #186ed8;
}
.banner3d_button.-paused.-paused::after {
  height: 0;
  top: 15px;
}

.form_select {
  width: 100%;
  max-width: none;
  margin: 0;
}

.form_textarea {
  height: 100px;
  width: 100%;
  min-width: 150px;
}

.form_textInput {
  width: 100%;
  min-width: 150px;
  height: 35px;
  margin: 3px 0;
}

.form_uniformHeight {
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.form_numberInput {
  padding: 5px;
  width: 75px;
}

.form_validationMessage {
  transition: color 300ms, border-color 300ms, background-color 300ms;
  line-height: 1em;
  padding: 0;
  width: 0;
  display: block;
  text-align: left;
  margin-top: 5px;
}
.form_validationMessage.-token {
  color: #aaa;
  border-radius: 14px;
  height: 28px;
  min-width: 28px;
  padding: 5px 7px;
  font-size: 12px;
  font-weight: bold;
  line-height: 18px;
  text-align: center;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  top: 7px;
  right: 4px;
  margin-top: 0;
}
.form_validationMessage.-token.-token {
  border: 1px solid #f7f7f7;
  background-color: #fff;
}
.form_validationMessage.-invalid, .form_validationMessage.-busy, .form_validationMessage.-valid {
  width: auto;
  opacity: 1;
}
.form_validationMessage.-invalid {
  color: #a22;
}
.form_validationMessage.-invalid.-token {
  border: 1px solid #e68080;
  background-color: #fff5f5;
}
.form_validationMessage.-valid {
  color: #171;
}
.form_validationMessage.-valid.-token {
  border: 1px solid #3ee33e;
  background-color: #f5fff5;
}

.form_validationTokenContainer {
  position: relative;
}

.form_panel.-informational::before, .form_info {
  content: "";
  width: 17px;
  height: 16px;
  display: inline-block;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20viewBox%3D%220%200%2017%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M8.5%2016a8%208%200%201%200%200-16%208%208%200%200%200%200%2016Z%22%20fill%3D%22%231A74E4%22%2F%3E%3Cpath%20d%3D%22M9.9%202.6c-.2-.3-.5-.4-.9-.4-.3%200-.6.1-.9.4-.2.3-.3.5-.3.9s0%20.7.3.9c.3.3.6.3.9.3.4%200%20.7%200%20.9-.3.2-.3.4-.6.4-.9%200-.4-.1-.6-.4-.9Zm-1%2010.3h-.3l-.4-.3v-.9l.1-.2.2-.4.8-2%20.2-.6v-.4c.1-.5.2-1.3-.1-1.6-.2-.3-.7-.4-1.3-.5h-1l-1.2.2-.4.8.9.1.6.2v1.1l-.2.4v.1l-.9%202v.4l-.1.2-.1.3v.2c-.1.4-.2%201%20.1%201.4.3.4.5.5.9.6H7c.43.05.87.05%201.3%200l.4-.1h.2l.3-1h-.3Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
}

.form_info {
  margin: -10px 0.25em 0;
}

.form_panel {
  border-radius: 3px;
  background: #e8eaf2;
  padding: 10px;
}
.form_panel.-informational {
  position: relative;
  padding: 1em 1em 1em calc(22px + 1em);
}
.form_panel.-informational p {
  margin: 0;
}
.form_panel.-informational p + p {
  margin-top: 1em;
}
.form_panel.-informational::before {
  position: absolute;
  top: 1em;
  left: 1em;
  display: block;
}

.form_heading {
  display: block;
  font-size: 1.1875rem;
  margin-bottom: 5px;
  font-weight: 300;
  margin-top: 5px;
}
.form_heading.-sub {
  font-size: 1rem;
  font-weight: bold;
}

.form_section {
  align-self: stretch;
}
.form_section + .form_section {
  border-top: 1px solid #d4d4ec;
  padding-top: 1rem;
  margin-top: 1rem;
}

.form_insetSection {
  padding-left: 1.5em;
  margin: 0.5em 0;
  font-size: 0.875rem;
}

.form_description {
  font-size: 1rem;
  line-height: 1.5em;
  color: #333;
  margin-top: 0;
  margin-bottom: 0;
}
.form_description.-sub {
  padding: 0 0 1rem 2.5em;
}
.form_description.-help {
  font-size: 0.875rem;
}
.form_description.-optionContext {
  font-size: 0.875rem;
  margin: 0.25rem 0 0;
  font-style: italic;
}
.form_description.-item {
  margin: 5px;
}

.form_label {
  font-weight: normal;
  margin: 0 0 0.5em;
  font-size: 1rem;
  display: block;
  color: #444;
}
.form_label.-small {
  font-size: 0.875rem;
}
.form_label.-large {
  font-size: 1.1875rem;
  margin-bottom: 0;
}
.form_label.-inline {
  margin-bottom: 0;
}
.form_label.-required::after {
  content: "*";
  color: #f00;
}

.form_inputRow {
  display: flex;
  align-items: center;
  column-gap: 0.5rem;
  min-height: 40px;
  line-height: 1.6em;
}
.form_inputRow.-topAlign {
  align-items: start;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.form_inputRow.-sub {
  color: #555;
  font-size: 0.875rem;
  min-height: 30px;
  padding: 0 0 1rem 2.5em;
}
.form_inputRow.-checkbox input:first-child {
  margin-top: 1px;
  margin-left: 0;
}

.form_list {
  padding: 0 0 0 1em;
}

.form_tagList {
  display: flex;
  flex-direction: row;
  column-gap: 0.25em;
  background: #e3ecfa;
  line-height: 1rem;
  flex-wrap: wrap;
}

.form_tag {
  padding: 0 0.25em;
  font-size: 0.75rem;
}

.form_removeTag {
  appearance: none;
  background: none;
  cursor: pointer;
  border: none;
  color: #c00;
  display: inline-block;
}
.form_removeTag:hover, .form_removeTag:focus {
  color: #f00;
}

.form_errorMessage {
  margin: 1em 0;
}
.form_errorMessage::before {
  content: "";
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2216%22%20height%3D%2216%22%20viewBox%3D%220%200%2016%2016%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20fill%3D%22none%22%20fill-rule%3D%22evenodd%22%3E%3Cpath%20fill%3D%22%23dd2929%22%20d%3D%22M0%204.5%204.5%200h7L16%204.5v7L11.5%2016h-7L0%2011.5z%22%2F%3E%3Cpath%20d%3D%22M7%209h2V3H7v6Zm0%202h2v2H7v-2Z%22%20fill%3D%22%23FFF%22%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E);
  width: 16px;
  height: 16px;
  display: inline-block;
  margin: 0 0.5em -2px 0;
}

.book {
  text-align: center;
  padding: 10px;
  position: relative;
}
.book.-card {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 250px;
  position: relative;
  padding: 15px;
}
.book.-card.-focused {
  background: transparent;
}
.book.-card.-focused .book_controls.-floating {
  z-index: 100;
  transform: none;
  pointer-events: auto;
  opacity: 1;
}
.book.-card .book_cell.-listMetrics,
.book.-card .book_cell.-listLabels,
.book.-card .book_description {
  display: none;
}
.book.-card.-teacher .book_cell.-title {
  height: 3em;
  align-self: flex-start;
  margin-top: 10px;
  display: flex;
  align-items: center;
}
.book:not(.-teacher) .book_cell.-title {
  display: none;
}
.book.-row {
  display: grid;
  column-gap: 10px;
  row-gap: 10px;
  grid-template-columns: auto 100px 1fr auto;
  grid-template-rows: auto auto 1fr auto auto;
  text-align: left;
}
.book.-row .book_cell.-cardMetrics {
  display: none;
}
.book.-row.-checkbox .book_cell.-checkbox,
.book.-row .book_cell.-cover {
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
.book.-row .book_cell.-checkbox {
  grid-column: 1;
  grid-row: 1/3;
}
.book.-row .book_cell.-cover {
  grid-column: 2;
  grid-row: 1/5;
}
.book.-row .book_cell.-description {
  grid-column: 3;
  grid-row: 2/4;
}
.book.-row .book_cell.-extra {
  grid-column: 3;
  grid-row: 4;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1em;
}
.book.-row .book_cell.-title {
  display: block;
  grid-column: 3/5;
  grid-row: 1;
}
.book.-row .book_cell.-listMetrics {
  grid-column: 4;
  grid-row: 2;
}
.book.-row .book_cell.-listLabels {
  grid-column: 3/5;
  grid-row: 5;
}
.book.-row .book_cell.-controls {
  grid-column: 4;
  grid-row: 3/5;
  align-items: flex-start;
  justify-content: flex-end;
  display: flex;
}

.book_cell.-extra {
  display: flex;
  flex-direction: column;
}

.book_cell.-checkbox {
  display: none;
}

.book_cell.-cover {
  transition: transform 200ms;
}

.book_cell.-level {
  font-size: 0.875rem;
  text-align: left;
}

.book_cell.-favorites {
  margin-top: 5px;
  display: flex;
  flex-direction: row;
  column-gap: 1em;
}

.book_cover {
  border-radius: 3px;
  position: relative;
  max-width: 200px;
  margin: 0 auto;
  transition: transform 200ms;
  box-sizing: content-box;
  --book-depth: 4px;
  padding: 0 var(--book-depth) var(--book-depth) 0;
  border: none;
  z-index: 2;
}
.book_cover.-clone-bookbag-animate {
  position: fixed;
  transition: none;
  transform-origin: top left;
  z-index: 100000000000;
  opacity: 0.9;
}
.book.-row .book_cover {
  width: 100%;
}
.book.-card.-focused .book_cover {
  box-shadow: 0 0 20px rgba(62, 161, 237, 0.5);
}
.book.-card:not(.-focused) .book_cover {
  cursor: pointer;
}
.book.-medium .book_cover {
  --book-depth: 6px;
}
.book.-long .book_cover {
  --book-depth: 8px;
}
.book.-epic .book_cover {
  --book-depth: 10px;
}
.book_cover::after {
  border-radius: 3px 0 3px 3px;
  background-image: linear-gradient(to right, #fff 0%, #fff 40%, #393939 55%, #343232 80%, #fff 91%, #fff 100%);
  transform: skewX(40deg);
  background-color: #888;
  position: absolute;
  bottom: 1px;
  height: 3px;
  width: 4px;
  left: -1px;
  content: "";
  display: block;
  border-style: solid;
  border-color: #fff;
  border-width: 0 1px;
}
.book.-medium .book_cover::after {
  height: 5px;
  width: 6px;
}
.book.-long .book_cover::after {
  height: 6px;
  width: 8px;
}
.book.-epic .book_cover::after {
  height: 9px;
  width: 10px;
}

.book_recommended {
  position: absolute;
  bottom: -5px;
  left: -5px;
  z-index: 10;
  background: #fff;
  border-radius: 100%;
  margin: 0;
  overflow: hidden;
  padding: 2px;
  border: 1px solid #ccc;
  display: flex;
  box-shadow: 0 0 3px #ccc;
  transform: scale(1.2);
}

.book_data {
  display: flex;
  align-items: flex-end;
  padding: 0;
  margin: 0;
}
.book_data.-card, .book_data.-labels {
  align-items: flex-start;
  flex-direction: column;
}

.book_dataGroup {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  flex: 0 0 auto;
  margin-right: 1rem;
  text-align: center;
}
.book_dataGroup.-card {
  margin-right: 0;
  flex-direction: row;
  flex-basis: auto;
  font-size: 0.875rem;
}
.book_dataGroup.-labels {
  flex-direction: row;
  align-items: start;
  margin-top: 1em;
}
.book_dataGroup.-list {
  flex-grow: 1;
}
.book_dataGroup:last-child {
  margin-right: 0;
}

.book_dataLabel {
  font-size: 0.875rem;
  font-weight: lighter;
}
.book.-card .book_dataLabel {
  text-align: left;
}
.book_dataGroup.-labels .book_dataLabel {
  min-width: 100px;
  text-align: left;
}

.book_dataValue {
  margin: 0 5px;
  padding: 0;
  white-space: nowrap;
}
.book_dataGroup.-labels .book_dataValue {
  font-size: 0.875rem;
  color: #666;
  white-space: normal;
  text-align: left;
}

.book_description {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
  font-size: 0.875rem;
  max-width: 70ch;
}

.book_controls {
  width: 100%;
}
.book.-card .book_controls.-floating {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-column-gap: 5px;
  grid-row-gap: 5px;
  border-radius: 10px;
  transition: opacity 250ms, max-height 250ms, transform 250ms;
  transform-origin: center top;
  transform: scale(0.8) translateY(-50px);
  position: absolute;
  opacity: 0;
  top: 100%;
  left: 50%;
  width: 190px;
  margin-left: -95px;
  z-index: 2;
  background: #fff;
  pointer-events: none;
  box-shadow: 0 0 0 1px #71839b, 0 10px 35px -5px rgba(24, 43, 74, 0.7);
  padding: 10px;
}
.book.-card .book_controls.-floating::before, .book.-card .book_controls.-floating::after {
  position: absolute;
  left: 50%;
  bottom: 100%;
  content: "";
}
.book.-card .book_controls.-floating::before {
  border: 11px solid transparent;
  margin-left: -11px;
  border-bottom-color: #71839b;
}
.book.-card .book_controls.-floating::after {
  border: 10px solid transparent;
  margin-left: -10px;
  border-bottom-color: #fff;
}
.book.-row .book_controls {
  display: flex;
  flex-direction: row;
  justify-content: space-evenly;
  align-items: center;
  border-radius: 35px;
  max-width: 275px;
  padding: 5px;
  column-gap: 5px;
}

.book_buttonIcon.-mylist {
  margin-top: 3px;
}

.book.-card .book_buttonIcon.-info,
.book.-card .book_buttonIcon.-ar,
.book.-row .book_buttonText.-info,
.book.-row .book_buttonText.-record,
.book.-row .book_buttonText.-ar,
.book.-row .book_buttonIcon.-read {
  display: none;
}

.book.-row .book_buttonText.-read {
  margin-left: 0;
}

.book_control.-addToList,
.book_control.-removeFromList,
.book.-row .book_control.-ar,
.book.-row .book_control.-info {
  width: 35px;
  height: 35px;
}

.book_control {
  flex: 1 1 auto;
  height: 35px;
  max-width: 200px;
  font-weight: bold;
  padding: 0;
}
.book.-card .book_control {
  grid-column: 1/3;
}
.book.-card .book_control.-info {
  grid-column: 1/2;
}
.book.-card .book_control.-addToList, .book.-card .book_control.-removeFromList {
  grid-column: 2/3;
}
.device.-touch .book_control {
  padding: 0;
}
.book_control.-info {
  background: #187ac9 !important;
}
.book_control.-mylist-link {
  width: 100%;
}
.book.-row .book_control {
  margin: 0 1px 0 1px;
}

.book_control.-read .book_buttonText,
.book_control.-info .book_buttonText {
  color: #fff;
}

.book_titleWrap {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.book_title {
  font-size: 14px;
  font-weight: 500;
  text-align: left;
  text-wrap: balance;
  line-height: 1em;
}
.book.-card .book_title {
  margin-top: 5px;
  margin-bottom: 15px;
}
.book.-row .book_title {
  justify-self: flex-start;
}

.book_coverImg,
.book_page {
  border-radius: 2px;
  transition: transform 400ms cubic-bezier(0.08, 0.82, 0.17, 1);
  transform-origin: top left;
  background: #fff;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.book_coverImg {
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
  display: block;
  margin: 0 auto;
  z-index: 9;
}
.book.-card:hover .book_coverImg {
  transform: scaleX(0.99) skewY(-1deg);
}
.book.-card.-focused .book_coverImg {
  transform: scaleX(0.95) skewY(-5deg);
}

.book_coverImgRatioFix {
  position: relative;
  perspective: 1000px;
  border-radius: 2px;
  perspective-origin: left 300px;
}

.book_ribbon {
  background: #5b5ebd;
  color: #fff;
  box-shadow: 0 3px 5px rgba(0, 0, 0, 0.6);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
  height: 45px;
  font-weight: bold;
  z-index: 10;
  position: absolute;
  padding-left: 10px;
  padding-right: 10px;
  max-width: 100%;
  bottom: 20px;
  margin-left: -6px;
  text-shadow: 0 0 1px black;
}
.book_ribbon::after {
  border-left: 17px solid #5b5ebd;
}
.book_ribbon::before {
  border-right: 6px solid #24265b;
}
.book_ribbon::before, .book_ribbon::after {
  position: absolute;
  content: "";
  display: block;
}
.book_ribbon::before {
  border-top: 0 solid transparent;
  border-bottom: 8px solid transparent;
  left: 0;
  top: 100%;
}
.book_ribbon::after {
  border-bottom: 45px solid transparent;
  border-top: 0 solid transparent;
  top: 0;
  left: 100%;
}

.book_ribbonLabel,
.book_ribbonTitle {
  line-height: 1.2em;
  max-width: 100%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.book_ribbonLabel {
  font-size: 12px;
  font-weight: 400;
}

.book_page {
  height: 100%;
  border: 1px solid #ddd;
}
.book_page.-n4 {
  top: 8px;
  left: 8px;
}
.book.-card.-epic.-focused .book_page.-n1 {
  transform: scaleX(0.96) skewY(-4deg);
}
.book.-card.-epic.-focused .book_page.-n2 {
  transform: scaleX(0.97) skewY(-3deg);
}
.book.-card.-epic.-focused .book_page.-n3 {
  transform: scaleX(0.98) skewY(-2deg);
}
.book.-card.-epic.-focused .book_page.-n4 {
  transform: scaleX(0.99) skewY(-1deg);
}
.book_page.-n3 {
  top: 6px;
  left: 6px;
}
.book.-card.-long.-focused .book_page.-n1 {
  transform: scaleX(0.9625) skewY(-3.75deg);
}
.book.-card.-long.-focused .book_page.-n2 {
  transform: scaleX(0.975) skewY(-2.5deg);
}
.book.-card.-long.-focused .book_page.-n3 {
  transform: scaleX(0.9875) skewY(-1.25deg);
}
.book_page.-n2 {
  top: 4px;
  left: 4px;
}
.book.-card.-medium.-focused .book_page.-n1 {
  transform: scaleX(0.9666666667) skewY(-3.3333333333deg);
}
.book.-card.-medium.-focused .book_page.-n2 {
  transform: scaleX(0.9833333333) skewY(-1.6666666667deg);
}
.book_page.-n1 {
  top: 2px;
  left: 2px;
}
.book.-card.-short.-focused .book_page.-n1 {
  transform: scaleX(0.975) skewY(-2.5deg);
}
.book_page.-backCover {
  top: var(--book-depth);
  left: var(--book-depth);
  border-radius: 3px;
  box-shadow: 1px 1px 3px #333;
  border: none;
}
.book.-short .book_page.-n4, .book.-short .book_page.-n3, .book.-short .book_page.-n2, .book.-medium .book_page.-n4, .book.-medium .book_page.-n3, .book.-long .book_page.-n4 {
  display: none;
}

.book_extraAction {
  font-size: 0.75rem;
  font-weight: normal;
  display: inline-flex;
  flex-direction: row;
  margin-top: 0.25em;
  align-items: center;
}

.bookRecording {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin: 2em 0 0;
  row-gap: 0.5em;
  text-decoration: none;
}
.bookRecording.-list {
  display: grid;
  column-gap: 1rem;
  grid-gap: 1rem;
  padding: 1rem;
  margin: 0;
  align-items: start;
  grid-template-columns: auto 1fr auto;
  grid-template-rows: auto auto 1fr;
  grid-template-areas: "cover title meta" "cover descr meta" "cover descr actions";
}

.bookRecording:not(.-list) .bookRecording_title,
.bookRecording:not(.-list) .bookRecording_actions,
.bookRecording:not(.-list) .bookRecording_descr {
  display: none;
}

.bookRecording_title {
  grid-area: title;
}
.bookRecording_title.-disabled {
  color: inherit;
}

.bookRecording_status {
  font-weight: bold;
}

.bookRecording.-list .bookRecording_status {
  color: inherit;
}

.bookRecording_date {
  font-size: 0.875rem;
  font-style: italic;
}

.bookRecording_descr {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
  grid-area: descr;
}

.bookRecording_meta {
  align-items: center;
  display: flex;
  flex-direction: column;
  grid-area: meta;
}

.bookRecording_coverLink {
  max-width: 80%;
  border: 1px solid #fff;
  box-shadow: 0 3px 7px rgba(0, 0, 0, 0.5);
  border-radius: 2px;
  grid-area: cover;
  align-self: center;
}
.bookRecording_coverLink:hover, .bookRecording_coverLink:focus {
  box-shadow: 0 0 0 3px #3ea1ed, 0 0 0 1px white;
}
.bookRecording.-list .bookRecording_coverLink {
  max-width: 100px;
}
.bookRecording_coverLink.-disabled {
  box-shadow: none;
  opacity: 0.85;
  filter: grayscale(100%);
  -webkit-filter: grayscale(100%);
}

.bookRecording_cover {
  display: block;
  max-width: 100%;
}

.mediaFlag {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-size: 1rem;
  font-weight: lighter;
  position: absolute;
  display: flex;
  bottom: 100%;
  align-items: flex-end;
  --media-flag-color: #51c075;
}
.mediaFlag.-status-none {
  --media-flag-color: #ec2f62;
}
.mediaFlag.-status-some {
  --media-flag-color: #fa9926;
}

.mediaFlag_icon {
  width: 35px;
  margin-left: 5px;
  margin-right: 10px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background: var(--media-flag-color);
}
.mediaFlag_icon::before {
  content: "";
  border-top: 10px solid transparent;
  display: block;
  position: absolute;
  bottom: 100%;
}
.mediaFlag.-status-none .mediaFlag_icon::before {
  border-right: 35px solid var(--media-flag-color);
}
.mediaFlag.-status-some .mediaFlag_icon::before {
  border-left: 17px solid var(--media-flag-color);
  border-right: 18px solid var(--media-flag-color);
}

.mediaFlag_label {
  color: #000;
}

.bookBrowser {
  padding: 0;
  margin: 0 auto;
  width: 100%;
}
.bookBrowser.-list {
  background: #fff;
}
.bookBrowser.-loading .bookBrowser_books {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}
.bookBrowser.-loading .bookBrowser_loading {
  display: block;
  border-top: 1px solid #fff;
}

.bookBrowser_books {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: flex-end;
  position: relative;
  min-height: 250px;
}
.bookBrowser.-list .bookBrowser_books {
  display: block;
}

.bookBrowser_loading {
  display: none;
  text-align: center;
  padding: 20px;
  font-size: 20px;
  font-weight: bold;
  font-style: italic;
  color: #aaa;
}

.bookBrowser_book {
  box-sizing: border-box;
  margin: 0 0 20px;
  position: relative;
}
.bookBrowser.-list .bookBrowser_book:not([hidden]):nth-of-type(2n) {
  background-color: #f2f5fb;
}

.bookBrowser.-card .bookBrowser_book {
  flex-basis: 16.6666666667%;
  max-width: 16.6666666667%;
}
@media screen and (max-width: 551px) {
  .bookBrowser.-card .bookBrowser_book {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
}
@media screen and (min-width: 552px) and (max-width: 735px) {
  .bookBrowser.-card .bookBrowser_book {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
}
@media screen and (min-width: 736px) and (max-width: 919px) {
  .bookBrowser.-card .bookBrowser_book {
    flex-basis: 25%;
    max-width: 25%;
  }
}
@media screen and (min-width: 920px) and (max-width: 1103px) {
  .bookBrowser.-card .bookBrowser_book {
    flex-basis: 20%;
    max-width: 20%;
  }
}
.bookBrowser.-card.-n10 {
  max-width: 2250px;
}
.bookBrowser.-card.-n10 .bookBrowser_book {
  flex-basis: 10%;
  max-width: 10%;
}
@media screen and (max-width: 427px) {
  .bookBrowser.-card.-n10 .bookBrowser_book {
    flex-basis: 50%;
    max-width: 50%;
  }
}
@media screen and (min-width: 428px) and (max-width: 641px) {
  .bookBrowser.-card.-n10 .bookBrowser_book {
    flex-basis: 50%;
    max-width: 50%;
  }
}
@media screen and (min-width: 642px) and (max-width: 855px) {
  .bookBrowser.-card.-n10 .bookBrowser_book {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
}
@media screen and (min-width: 856px) and (max-width: 1069px) {
  .bookBrowser.-card.-n10 .bookBrowser_book {
    flex-basis: 25%;
    max-width: 25%;
  }
}
@media screen and (min-width: 1070px) and (max-width: 1283px) {
  .bookBrowser.-card.-n10 .bookBrowser_book {
    flex-basis: 20%;
    max-width: 20%;
  }
}
@media screen and (min-width: 1284px) and (max-width: 1497px) {
  .bookBrowser.-card.-n10 .bookBrowser_book {
    flex-basis: 16.6666666667%;
    max-width: 16.6666666667%;
  }
}
@media screen and (min-width: 1498px) and (max-width: 1711px) {
  .bookBrowser.-card.-n10 .bookBrowser_book {
    flex-basis: 14.2857142857%;
    max-width: 14.2857142857%;
  }
}
@media screen and (min-width: 1712px) and (max-width: 1925px) {
  .bookBrowser.-card.-n10 .bookBrowser_book {
    flex-basis: 12.5%;
    max-width: 12.5%;
  }
}
@media screen and (min-width: 1926px) and (max-width: 2139px) {
  .bookBrowser.-card.-n10 .bookBrowser_book {
    flex-basis: 11.1111111111%;
    max-width: 11.1111111111%;
  }
}
.bookBrowser.-card.-n4 .bookBrowser_book {
  flex-basis: 25%;
  max-width: 25%;
}
@media screen and (max-width: 531px) {
  .bookBrowser.-card.-n4 .bookBrowser_book {
    flex-basis: 50%;
    max-width: 50%;
  }
}
@media screen and (min-width: 532px) and (max-width: 797px) {
  .bookBrowser.-card.-n4 .bookBrowser_book {
    flex-basis: 50%;
    max-width: 50%;
  }
}
@media screen and (min-width: 798px) and (max-width: 1063px) {
  .bookBrowser.-card.-n4 .bookBrowser_book {
    flex-basis: 33.3333333333%;
    max-width: 33.3333333333%;
  }
}
.bookBrowser.-card.-n3 .bookBrowser_book {
  flex-basis: 33.3333333333%;
  max-width: 33.3333333333%;
}
@media screen and (max-width: 683px) {
  .bookBrowser.-card.-n3 .bookBrowser_book {
    flex-basis: 50%;
    max-width: 50%;
  }
}
@media screen and (min-width: 684px) and (max-width: 1025px) {
  .bookBrowser.-card.-n3 .bookBrowser_book {
    flex-basis: 50%;
    max-width: 50%;
  }
}

.keyvalue {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  text-align: center;
}
.keyvalue.-column {
  flex-direction: column;
  text-align: left;
}
.keyvalue.-column .keyvalue_pair {
  flex-direction: row;
  padding: 5px 0;
  border-bottom: 1px solid #eee;
}
.keyvalue.-column .keyvalue_pair:last-child {
  border-bottom: none;
}
.keyvalue.-column .keyvalue_key {
  padding-bottom: 0;
  margin-bottom: 0;
}
.keyvalue.-column .keyvalue_key,
.keyvalue.-column .keyvalue_value {
  flex-basis: 50%;
  flex-grow: 0;
  flex-shrink: 0;
  border-bottom: none;
}
.keyvalue.-full {
  justify-content: stretch;
  text-align: left;
}
.keyvalue.-full .keyvalue_pair {
  flex-grow: 1;
}

.keyvalue_pair {
  display: flex;
  flex-direction: column;
  flex-basis: auto;
  flex-grow: 0;
  flex-shrink: 0;
}
.keyvalue_pair.-numeric {
  text-align: right;
}

.keyvalue_key {
  color: #666;
  font-size: 0.8em;
  border-bottom: 1px solid #eee;
  padding-bottom: 5px;
  margin-bottom: 5px;
}

.keyvalue_value {
  font-weight: normal;
}

@media screen and (max-width: 1100px) {
  .keyvalue.-autoColumn {
    font-size: 14px;
  }
}
@media screen and (max-width: 960px) {
  .keyvalue.-autoColumn {
    flex-direction: column;
    text-align: left;
  }
  .keyvalue.-autoColumn .keyvalue_pair {
    flex-direction: row;
    padding: 5px 0;
    border-bottom: 1px solid #eee;
  }
  .keyvalue.-autoColumn .keyvalue_pair:last-child {
    border-bottom: none;
  }
  .keyvalue.-autoColumn .keyvalue_key {
    padding-bottom: 0;
    margin-bottom: 0;
  }
  .keyvalue.-autoColumn .keyvalue_key,
.keyvalue.-autoColumn .keyvalue_value {
    flex-basis: 50%;
    flex-grow: 0;
    flex-shrink: 0;
    border-bottom: none;
  }
}
.sidebarList {
  --icon-width: 30px;
  display: grid;
  grid-template-columns: var(--icon-width) 1fr;
  column-gap: 1em;
  margin: 0;
  align-items: center;
  color: #333;
}
.sidebarList.-compact {
  --icon-width: 20px;
  column-gap: 0.5em;
}
.sidebarList.-breezy {
  row-gap: 0.5em;
}
.device.-touch .sidebarList {
  --icon-width: 40px;
}

.sidebarList_navItem, .sidebarList_subheader, .sidebarList_header, .sidebarList_item {
  grid-column: 2;
  min-height: 1.3em;
  line-height: 1.3em;
  padding: 0.25em 0;
  margin: 0;
}

.sidebarList_navItem, .sidebarList_subheader, .sidebarList_header {
  grid-column: 1/3;
}

.sidebarList_navItem {
  padding-left: calc(1em + var(--icon-width));
}

.sidebarList_subheader {
  padding: 0.25em 0.5em 0.25em 1.5em;
  background: #fff;
}

.sidebarList_icon {
  grid-column: 1;
  justify-self: center;
}
.sidebarList_icon + * {
  grid-column: 2;
}

.sidebarList_navItem {
  transition: background 100ms;
  padding-right: 0.25em;
  cursor: pointer;
  color: #444;
  border-radius: 2px;
  text-decoration: none;
}
.sidebarList_navItem:hover, .sidebarList_navItem:focus {
  background: #dde9f9;
}
.sidebarList_navItem.-current {
  background: #d1e2f7;
}

.bookBag {
  padding: 1em;
  display: grid;
  grid-template-rows: auto auto auto auto 1fr auto;
}

.bookBag_closeButton {
  grid-row: 1;
  justify-self: flex-end;
  font-size: 0.875rem;
  margin-right: 1em;
}

.bookBag_title,
.bookBag_icon,
.bookBag_empty {
  margin: 0 1rem 1rem;
}

.bookBag_bookList {
  overflow: auto;
  background: linear-gradient(#fff 30%, rgba(255, 255, 255, 0)), linear-gradient(rgba(255, 255, 255, 0), #fff 70%) 0 100%, radial-gradient(50% 0, farthest-side, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)), radial-gradient(50% 100%, farthest-side, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) 0 100%;
  background: linear-gradient(#fff 30%, rgba(255, 255, 255, 0)), linear-gradient(rgba(255, 255, 255, 0), #fff 70%) 0 100%, radial-gradient(farthest-side at 50% 0, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 50% 100%, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) 0 100%;
  background-repeat: no-repeat;
  background-color: white;
  background-size: 100% 40px, 100% 40px, 100% 14px, 100% 14px;
  /* Opera doesn't support this in the shorthand */
  background-attachment: local, local, scroll, scroll;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.bookBag_empty {
  background: #f5f5f5;
  color: #666;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1em;
}

.bookBag_emptyIcon {
  filter: saturate(0%) brightness(120%);
  margin: 1em;
}

.bookBag_book {
  display: grid;
  grid-template-columns: 80px 1fr;
  grid-template-rows: auto 1fr auto auto;
  column-gap: 1em;
  row-gap: 0.25em;
  padding: 1em;
  min-height: 130px;
  grid-template-areas: "cover title" "cover detail" "cover favorites" "cover remove";
}

.bookBag_bookCover {
  grid-area: cover;
  margin: 0 auto;
  object-fit: contain;
  width: 100%;
  height: 100%;
}
.bookBag_bookCover.-loading {
  border-radius: 5px;
  background: #dfeaf0;
  width: 70%;
}

.bookBag_favoritesButton,
.bookBag_titleButton,
.bookBag_removeButton,
.bookBag_detail {
  text-align: left;
  align-items: center;
  font-size: 0.75rem;
}

.bookBag_favoritesButton,
.bookBag_removeButton {
  display: grid;
  grid-template-columns: 25px 1fr;
  gap: 0.5em;
}

.bookBag_buttonIcon {
  align-self: center;
  justify-self: center;
}

.bookBag_titleButton {
  font-size: 0.875rem;
}

.bookBag_detail {
  color: #666;
}

.bookBag_actions {
  padding: 1em;
  margin: 1em;
  border-top: 1px solid #ccc;
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.bookBag_info {
  font-size: 0.875rem;
  flex-grow: 1;
  text-align: center;
  margin: 2em;
}

.bookBundle {
  width: 14em;
  text-align: left;
}

.bookBundle_header,
.bookBundle_createForm,
.bookBundle_list {
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
  margin: 0;
}

.bookBundle_header {
  border-bottom: 1px solid #eee;
}

.bookBundle_list {
  overflow: auto;
  background: linear-gradient(#fff 30%, rgba(255, 255, 255, 0)), linear-gradient(rgba(255, 255, 255, 0), #fff 70%) 0 100%, radial-gradient(50% 0, farthest-side, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)), radial-gradient(50% 100%, farthest-side, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) 0 100%;
  background: linear-gradient(#fff 30%, rgba(255, 255, 255, 0)), linear-gradient(rgba(255, 255, 255, 0), #fff 70%) 0 100%, radial-gradient(farthest-side at 50% 0, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 50% 100%, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) 0 100%;
  background-repeat: no-repeat;
  background-color: white;
  background-size: 100% 40px, 100% 40px, 100% 14px, 100% 14px;
  /* Opera doesn't support this in the shorthand */
  background-attachment: local, local, scroll, scroll;
  padding: 0 1rem 0.5rem;
  max-height: 180px;
  overflow-y: auto;
  border-radius: 0 0 10px 10px;
}

.bookBundle_listItem {
  display: flex;
  flex-direction: row;
  align-items: center;
  min-height: 30px;
}

.bookBundle_label {
  flex: 1 1 auto;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.bookBundle_input {
  max-width: 100%;
  font-size: 0.875rem;
}

.countdown {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 100000000;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  font-size: 20vmin;
}

.micCheckDg {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  transition: background 500ms;
  z-index: 100000000;
}
.micCheckDg.-visible {
  background: rgba(0, 0, 0, 0.5);
}

.micCheckDg_contents {
  transition: transform 400ms cubic-bezier(0.68, 0, 0.265, 1.55), opacity 300ms;
  box-shadow: 0 0 0 1px rgba(248, 248, 242, 0.4), 0 30px 100px rgba(0, 0, 0, 0.5);
  perspective: 800px;
  transform: scale(0);
  opacity: 0;
  display: inline-flex;
  flex-direction: column;
  flex-grow: 0;
  background: #fff;
  border: 2px solid #9ed6f2;
  border-radius: 5px;
  align-items: center;
}
.micCheckDg.-visible .micCheckDg_contents {
  transform: none;
  opacity: 1;
}

.micCheckDg_header,
.micCheckDg_body {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.micCheckDg_body.-test {
  width: auto;
  display: inline-block;
  align-self: flex-start;
}

.micCheckDg_header {
  background: #9ed6f2;
  padding: 10px;
}

.micCheckDg_footer {
  width: 100%;
  padding: 5px 20px;
  font-size: 1rem;
  display: flex;
  background: #e3ecfa;
  column-gap: 20px;
  align-items: center;
  justify-content: center;
}

.micCheckDg_body {
  padding: 10px;
  font-size: 1.1875rem;
  margin: 0;
  opacity: 0;
  overflow: hidden;
  transition: width 500ms, opacity 500ms;
  white-space: nowrap;
}
.micCheckDg_body.-textVisible {
  opacity: 1;
}

.micCheckDg_descr {
  width: 290px;
}

.micCheckDg_img {
  max-height: 140px;
}

.micCheckDg_exitLink {
  display: block;
  margin: 1rem 0;
  font-size: 1.1875rem;
  font-weight: bold;
  color: #186ed8;
}

.recording {
  --panel-color: #272a32;
  display: flex;
  gap: 1em;
}
.recording.-light {
  --panel-color: #f2f5fb;
}
.recording.-static {
  margin-top: 2em;
}

.recording_avatar {
  display: flex;
  margin: 0;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.recording_avatarImg {
  width: 50px;
  height: 50px;
  border: 1px solid #fff;
  border-radius: 1px;
}
.recording.-light .recording_avatarImg {
  border-color: #333;
}

.recording_avatarLabel {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-size: 0.875rem;
  max-width: 150px;
  line-height: 1.2em;
  text-align: center;
  margin-top: 5px;
}

.recording_userControls {
  background: var(--panel-color);
  margin-left: 20px;
  position: relative;
  border-radius: 5px;
  padding: 1em;
  align-items: center;
  column-gap: 10px;
  width: 260px;
  height: 100px;
}
.recording_avatar + .recording_userControls::before {
  content: "";
  display: block;
  top: calc(50% - 10px);
  border-right: 10px solid var(--panel-color);
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  position: absolute;
  right: 100%;
}

.recording_button {
  height: 38px;
  width: 45px;
  border-radius: 10px;
  align-items: center;
  justify-content: center;
}

.recording_status {
  position: absolute;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 1em;
  bottom: 100%;
  left: 10px;
  right: 10px;
  background: #0a850e;
  color: #fff;
  text-align: center;
  padding: 2px 5px;
  border-radius: 5px 5px 0 0;
}

.recording_turnedIn {
  margin-left: 1em;
  display: flex;
  flex-direction: row;
  align-items: center;
  column-gap: 0.5em;
  color: #0a850e;
}

.multipage {
  background-color: #f2f5fb;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  overflow-y: auto;
  height: calc(100vh - 250px);
  border-top: 1px solid #cbd7ef;
}

.multipage_pages {
  flex-wrap: wrap;
  width: 100%;
  align-items: stretch;
  justify-content: center;
  display: flex;
  padding: 1vh;
  gap: 2vh;
}

.multipage_page {
  background-color: #fff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  padding: 2em;
  align-items: center;
}

.multipage_paragraph {
  margin: 1em 0;
  text-indent: 2em;
}
.multipage_paragraph.-split {
  text-indent: 0;
}

.multipage_pageContent {
  flex-grow: 1;
  font-size: clamp(0.75rem, 1.7vh, 1.625rem);
  width: 30em;
  height: 30em;
}

.multipage_pageNumber {
  margin-top: 1em;
  font-size: clamp(1.1875rem, 2.2vh, 1.625rem);
  color: #888;
}
@media screen and (max-height: 800px) {
  .multipage_pageNumber {
    display: none;
  }
}

.exam {
  padding: 8%;
  max-width: 900px;
  margin: 2em auto;
}

.exam_index {
  font-weight: 700;
  font-size: 1.1875rem;
  color: #767676;
}

.exam_indent {
  margin-left: 10%;
}

.exam_passage {
  font-size: 1.1875rem;
  max-width: 60ch;
  line-height: 2em;
  text-indent: 3ch;
  padding: 1em;
  margin: 0 auto;
}
.exam_passage.-reference {
  border-radius: 1em;
  background: #f5f6f9;
  margin: 1.5em;
}
.exam_passage > p {
  text-indent: 3ch;
  text-wrap: stable;
  margin: 1.5em 0;
}
.exam_passage select {
  margin: 0;
}

.speechReco_insertion,
.speechReco_word {
  display: inline-block;
  line-height: 2em;
  height: 2em;
}

.speechReco_word {
  border-radius: 2px;
}
.speechReco_word.-active {
  background: rgba(24, 110, 216, 0.2);
}
.speechReco_word.-incorrect {
  background: #186ed8;
  padding: 0 3px;
  color: #fff;
}
.speechReco_word.-incorrect.-active {
  background: rgba(24, 110, 216, 0.8);
}
.speechReco_word.-unmatched {
  color: #767676;
}

.speechReco_errorIcon {
  background: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2218%22%20height%3D%2218%22%20viewBox%3D%220%200%2018%2018%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Crect%20width%3D%2218%22%20height%3D%2218%22%20rx%3D%223%22%20fill%3D%22%23186ed8%22%2F%3E%3C%2Fsvg%3E);
  display: inline-block;
  margin-right: 0.5em;
  width: 18px;
  height: 18px;
}

.speechReco_insertIcon {
  background: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2219%22%20height%3D%2216%22%20viewBox%3D%220%200%2019%2016%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M11.12%2015a2%202%200%200%201-3.46%200L.73%203a2%202%200%200%201%201.73-3h13.86a2%202%200%200%201%201.73%203l-6.93%2012Z%22%20fill%3D%22%23186ed8%22%2F%3E%3C%2Fsvg%3E);
  margin-right: 0.5em;
  display: inline-block;
  width: 19px;
  height: 16px;
}

.speechReco_insertion::after {
  content: "";
  display: inline-block;
  background: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2213%22%20height%3D%2211%22%20viewBox%3D%220%200%2013%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M7.36121%209.75C6.97631%2010.4167%206.01406%2010.4167%205.62916%209.75L0.866025%201.5C0.481125%200.833333%200.96225%208.41226e-08%201.73205%201.51421e-07L11.2583%209.84234e-07C12.0281%201.05153e-06%2012.5093%200.833334%2012.1244%201.5L7.36121%209.75Z%22%20fill%3D%22%23186ed8%22%2F%3E%3C%2Fsvg%3E);
  position: relative;
  width: 13px;
  height: 11px;
  top: -6px;
}
.speechReco_insertion.-active {
  opacity: 80%;
}

.speechReco_evaluationToken.-processing, .speechReco_evaluationToken.-instructional, .speechReco_evaluationToken.-independent {
  color: #333;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2211%22%20height%3D%2211%22%20viewBox%3D%220%200%2011%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M3.86%201.9a1.1%201.1%200%200%201%202.05-.1l.03.1.44%201.3a2.2%202.2%200%200%200%201.26%201.32l.12.05%201.3.44c.96.33.99%201.66.08%202.05l-.09.03-1.3.45a2.2%202.2%200%200%200-1.32%201.25l-.05.12-.44%201.3a1.1%201.1%200%200%201-2.05.08l-.03-.08-.45-1.3a2.2%202.2%200%200%200-1.25-1.33l-.12-.04-1.3-.45a1.1%201.1%200%200%201-.08-2.05l.09-.03%201.3-.44A2.2%202.2%200%200%200%203.36%203.3l.04-.11.45-1.3ZM9.3%200a.55.55%200%200%201%20.5.3l.02.07.2.57.56.19a.55.55%200%200%201%20.06%201.01l-.06.03-.57.2-.19.56a.55.55%200%200%201-1.01.06l-.03-.06-.2-.57-.56-.19a.55.55%200%200%201-.06-1.01l.06-.03.57-.2.19-.56A.55.55%200%200%201%209.3%200Z%22%20fill%3D%22%23333%22%2F%3E%3C%2Fsvg%3E);
}

.speechReco_evaluationToken {
  color: #fff;
  background-image: url(data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2211%22%20height%3D%2211%22%20viewBox%3D%220%200%2011%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20d%3D%22M3.86%201.9a1.1%201.1%200%200%201%202.05-.1l.03.1.44%201.3a2.2%202.2%200%200%200%201.26%201.32l.12.05%201.3.44c.96.33.99%201.66.08%202.05l-.09.03-1.3.45a2.2%202.2%200%200%200-1.32%201.25l-.05.12-.44%201.3a1.1%201.1%200%200%201-2.05.08l-.03-.08-.45-1.3a2.2%202.2%200%200%200-1.25-1.33l-.12-.04-1.3-.45a1.1%201.1%200%200%201-.08-2.05l.09-.03%201.3-.44A2.2%202.2%200%200%200%203.36%203.3l.04-.11.45-1.3ZM9.3%200a.55.55%200%200%201%20.5.3l.02.07.2.57.56.19a.55.55%200%200%201%20.06%201.01l-.06.03-.57.2-.19.56a.55.55%200%200%201-1.01.06l-.03-.06-.2-.57-.56-.19a.55.55%200%200%201-.06-1.01l.06-.03.57-.2.19-.56A.55.55%200%200%201%209.3%200Z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E);
  height: 1.1875rem;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0 11px 0 26px;
  border-radius: 2px;
  font-size: 0.75rem;
  background-repeat: no-repeat;
  background-position: 7px center;
}
.speechReco_evaluationToken.-independent {
  background-color: #9edf92;
  background-color: #9edf92;
}
.speechReco_evaluationToken.-instructional {
  background-color: #f9ab4f;
  background-color: #f9ab4f;
}
.speechReco_evaluationToken.-needs-support {
  background-color: #186ed8;
  background-color: #186ed8;
}
.speechReco_evaluationToken.-needs-urgent-support {
  background-color: #e22f24;
  background-color: #e22f24;
}
.speechReco_evaluationToken.-unscored {
  background-color: #767676;
  background-color: #767676;
}
.speechReco_evaluationToken.-processing {
  background-color: #eee;
  background-color: #eee;
}
.speechReco_evaluationToken.-select {
  height: auto;
  padding: 4px 15px 5px 27px;
  cursor: pointer;
  border: none;
}
.g_resetFieldset {
  border: none;
  padding: 0;
  margin: 0;
}

.g_resetUl {
  list-style: none;
  padding: 0;
  margin: 0;
}

.g_resetDl dd {
  margin-inline-start: 0;
  margin-left: 0;
}

.g_hidden {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  width: 0 !important;
  margin: 0 !important;
}

.g_bold {
  font-weight: bold;
}

.g_italic {
  font-style: italic;
}

.g_light {
  color: #767676;
  font-size: 0.875rem;
}

.g_block {
  display: block;
}

.g_center {
  text-align: center;
}

.g_alignLeft {
  text-align: left;
}

.g_alignRight {
  text-align: right;
}

.g_overflowHidden {
  overflow: hidden;
}

.g_ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.g_multiline-ellipse-small {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.g_multiline-ellipse-medium {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6;
  overflow: hidden;
}

.g_overflowWrap {
  overflow-wrap: break-word;
}

.g_verticalOverflow {
  overflow-y: auto;
  max-height: 100%;
}

.g_emptyMessage {
  box-shadow: 0 0 0 2px #e8eaf2;
  padding: 10px;
  border-radius: 10px;
  background-color: #fff;
  font-style: italic;
  line-height: 1.5em;
}
.g_emptyMessage.-withSpace {
  margin: 10px;
}

.g_screenReader {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
  opacity: 0;
  pointer-events: none;
}

.g_emphasize {
  animation: noticeMe 500ms;
}

@keyframes noticeMe {
  0% {
    transform: rotate(0deg);
  }
  30% {
    transform: scale(1.2);
  }
  50% {
    transform: rotate(-10deg);
  }
  90% {
    transform: scale(1);
  }
  100% {
    transform: rotate(0deg);
  }
}
.g_nowrap {
  white-space: nowrap;
}

.g_preserveWhiteSpace {
  white-space: preserve;
}

.g_verticalCenter {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

.g_padding {
  padding: 1em;
}

.g_paddingCompact {
  padding: 0.5em;
}

.g_noTransition {
  transition: none;
}

.g_margin {
  margin: 1em;
}

.g_noMargin {
  margin: 0 !important;
}

.g_alignCenter {
  text-align: center;
}

.g_verticalMargin {
  margin-top: 1.2em;
  margin-bottom: 1.2em;
}

.g_spacerTop {
  margin-top: 3em;
}

.g_paragraphMarginTop {
  margin-top: 1em;
}

.g_separator {
  padding-bottom: 5px;
  border-bottom: 3px solid #dde2ea;
}

.g_separatorLeft {
  padding-left: 5px;
  border-left: 3px solid #dde2ea;
}

.g_clearfix::before, .g_clearfix::after {
  content: " ";
  display: table;
}
.g_clearfix::after {
  clear: both;
}

@media screen and (max-width: 799px) {
  .g_min800 {
    display: none;
  }
}
.g_horizontalMargin {
  margin-left: 0.5rem;
  margin-right: 0.5rem;
}

.g_resetAddress {
  font-style: normal;
}

.g_sectionTitle {
  font-weight: bold;
  font-size: 1.1875rem;
}

.g_sectionParagraph {
  margin-left: 10px;
}

.g_text-small {
  font-size: 0.875rem;
}

.g_text-xs {
  font-size: 0.75rem;
}

.g_text-l {
  font-size: 1.1875rem;
}

.g_text-xl {
  font-size: 1.375rem;
}

.g_text-xxl {
  font-size: 1.625rem;
}

.g_word-break {
  word-break: break-word;
}

.g_nl2br {
  white-space: pre-line;
}

.g_betaTag {
  background-color: #dce8f7;
  color: #186ed8;
  padding: 0.25em 0.5em;
  border-radius: 0.25em;
  font-size: 0.75rem;
  display: inline-block;
}

.g_fullWidth {
  width: 100%;
}

@font-face {
  font-family: "UnderscoreFont";
  src: local("Courier New");
  /* Replace with a monospace or custom font */
  unicode-range: U+005F;
  /* Only applies to underscores (_) */
}
.g_continuousUnderscores {
  font-family: "UnderscoreFont", "Roboto", sans-serif;
  /* Fallback to default font */
  letter-spacing: 0;
  /* Optional: Ensure no extra spacing */
}

.g_noPointer {
  pointer-events: none;
}

.g_noTransition,
.g_noTransition * {
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -o-transition: none !important;
}
