@charset "UTF-8";

@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0");

.material-symbols-outlined {
  font-family: "Material Symbols Outlined";
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-smoothing: antialiased;
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;
}


.ava-scope {
  --main-container-max-width: 100%;
  --main-banner-min-height: 11.5rem;
  --font-family-base: 'Open Sans', sans-serif;
  --font-family-title: var(--font-family-base);
  --font-family-mono: "Roboto Mono", monospace;
  --font-family-accent: var(--font-family-mono);
  --line-height-base: 1.55;
  --line-height-medium: 1.35;
  --line-height-compact: 1.2;
  --letter-spacing-text-uppercase: 0.05em;
  --font-size-base: 1rem;
  --font-size-small: 0.9375rem;
  --font-size-x-small: 0.875rem;
  --font-size-xx-small: 0.8125rem;
  --font-size-title-main-banner: clamp(1.625rem, 4vw, 1.875rem);
  --font-size-title-resumo-visual: clamp(1.625rem, 4.5vw, 2rem);
  --font-size-h1: clamp(1.875rem, 4.5vw, 2.25rem);
  --font-size-h2: clamp(1.4375rem, 3vw, 1.5rem);
  --font-size-h3: clamp(1.1875rem, 3vw, 1.25rem);
  --font-weight-normal: 400;
  --font-weight-semibold: 500;
  --font-weight-bold: 700;
  --space-horizontal-wrapper: .625rem;
  --space-horizontal-section: 1rem;
  --space-vertical-section: 4.5rem;
  --space-vertical-paragraph: 1.125rem;
  --box-padding-big: 2rem clamp(1rem, 5%, 2rem);
  --box-padding-medium: 1.75rem clamp(1rem, 5%, 1.5rem);
  --border-radius-button: 2px;
  --border-radius-small: 3px;
  --border-radius-medium: 6px;
  --border-radius-large: 12px;
}

@media (min-width: 700px) {
  .ava-scope {
    --main-container-max-width: 52rem;
    --space-horizontal-wrapper: 1.25rem;
    --space-horizontal-section: 0;
  }
}

.ava-scope {
  --color-accent: #00a5a2;
  --color-accent-rgb: 0, 165, 162;
  --color-accent-dark: #00827D;
  --color-accent-light: rgba(var(--color-accent-rgb), .6);
  --color-text: #1d1d1f;
  --color-text-gray: rgb(0, 0, 0, .7);
  --color-text-light-gray: #999;
  --color-text-green: var(--color-accent);
  --color-text-red: #d13239;
  --color-text-blue: #607bf7;
  --color-text-purple: #9162c0;
  --color-text-yellow: #fab005;
  --color-background-page: #fff;
  --color-background-gray: rgba(0, 0, 0, 0.05);
  --color-background-gray-hover: rgba(0, 0, 0, .1);
  --color-background-green: rgba(0, 165, 162, .09);
  --color-background-yellow: rgba(251, 238, 202, .7);
  --color-background-purple: rgba(203, 65, 232, .09);
  --color-background-blue: rgba(96, 122, 248, .12);
  --color-background-red: rgba(255, 0, 0, .07);
  --color-background-code: #272727;
  --color-text-decoration: var(--color-accent-light);
  --color-text-decoration-hover: var(--color-accent);
  --color-text-decoration-gray: rgb(0, 0, 0, .18);
  --color-border-gray: rgba(0, 0, 0, .12);
  --color-border-button-gray: rgba(0, 0, 0, .18);
  --shadow-light: 0 11px 25px 0 rgba(0, 0, 0, .04);
  --shadow-dark: 0 8px 32px rgba(0, 0, 0, .1);
  --shadow-card: 0 1px 2px rgba(0, 0, 0, .08), 0 4px 8px rgba(0, 0, 0, .02);
  --shadow-image: 0 1px 2px rgba(0, 0, 0, .08), 0 4px 8px rgba(0, 0, 0, .02), 0 0 4px rgba(0, 0, 0, .08);
  --shadow-icon: 0 1px 2px rgba(0, 0, 0, .08), 0 4px 8px rgba(0, 0, 0, .02), 0 0 4px rgba(0, 0, 0, .08);
}

.ava-scope *,
.ava-scope *::before,
.ava-scope *::after {
  margin: 0;
  padding: 0;
  box-sizing: border-box
}

.ava-scope ::before,
.ava-scope ::after {
  text-decoration: inherit;
  vertical-align: inherit
}

.ava-scope {
  -webkit-tap-highlight-color: transparent;
  scroll-behavior: smooth;
  text-rendering: optimizeLegibility;
  overflow-wrap: break-word;
  /* Adjust font size */
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  /* Smoothing */
  /*-webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale*/
}

@media (prefers-reduced-motion: reduce) {
  .ava-scope:focus-within {
    scroll-behavior: auto;
  }

  .ava-scope *,
  .ava-scope *::before,
  .ava-scope *::after {
    -webkit-animation-duration: 0.01ms ! important;
    animation-duration: 0.01ms ! important;
    -webkit-animation-iteration-count: 1 ! important;
    animation-iteration-count: 1 ! important;
    transition-duration: 0.01ms ! important;
    scroll-behavior: auto ! important;
  }
}

@media (prefers-reduced-motion: reduce) {

  .ava-scope *:not([aria-busy=true]),
  .ava-scope :not([aria-busy=true])::before,
  .ava-scope :not([aria-busy=true])::after {
    background-attachment: initial ! important;
    animation-duration: 1ms ! important;
    animation-delay: -1ms ! important;
    animation-iteration-count: 1 ! important;
    scroll-behavior: auto ! important;
    transition-delay: 0s ! important;
    transition-duration: 0s ! important;
  }
}

.ava-scope ::-moz-selection {
  color: var(--color-text);
  background-color: rgb(216 255 246);
  text-shadow: none
}

.ava-scope ::selection {
  color: var(--color-text);
  background-color: rgb(216 255 246);
  text-shadow: none
}

.ava-scope {
  font-family: var(--font-family-base);
  font-size: 1rem;
  font-weight: normal;
  line-height: var(--line-height-base);
  color: var(--color-text);
  /* overflow-x: hidden */
  margin: 0 auto;
  -webkit-font-smoothing: auto;
  box-sizing: border-box;
}

.ava-scope article,
.ava-scope aside,
.ava-scope details,
.ava-scope caption,
.ava-scope figcaption,
.ava-scope figure,
.ava-scope footer,
.ava-scope header,
.ava-scope hgroup,
.ava-scope main,
.ava-scope nav,
.ava-scope picture,
.ava-scope section,
.ava-scope summary {
  display: block
}

.ava-scope img {
  display: block;
  height: auto;
  max-width: 100%
}

.ava-scope li img,
.ava-scope p img {
  display: inline-block;
  vertical-align: middle
}

.ava-scope audio {
  display: inline-block;
  max-width: 100%
}

.ava-scope audio:not([controls]) {
  display: none;
  height: 0
}

.ava-scope audio::-webkit-media-controls-panel {
  background: rgba(0, 0, 0, .05);
}

.ava-scope audio+details {
  margin-top: 1rem;
}

.ava-scope a {
  color: inherit;
  cursor: pointer
}

.ava-scope a:not([href]),
.ava-scope a:not([href]):hover {
  text-decoration: none;
}

.ava-scope b,
.ava-scope strong {
  font-weight: var(--font-weight-bold);
}

.ava-scope s,
.ava-scope del {
  background: linear-gradient(180deg,
      transparent 55%,
      currentColor 55%,
      currentColor calc(55% + 1px),
      transparent calc(55% + 1px));
  text-decoration: none
}

.ava-scope del {
  color: #883935
}

.ava-scope ins {
  color: var(--color-accent);
  text-decoration: none
}

.ava-scope pre,
.ava-scope code,
.ava-scope kbd,
.ava-scope samp {
  font-family: monospace;
  font-size: 1em
}

.ava-scope abbr[title] {
  border-bottom: 1px dotted;
  text-decoration: none;
  cursor: help
}

.ava-scope small {
  font-size: 80%
}

.ava-scope sub,
.ava-scope sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline
}

.ava-scope sub {
  bottom: -.25em
}

.ava-scope sup {
  top: -.5em
}

.ava-scope hr {
  border: none;
  border-top: 1px solid var(--color-border-gray);
  margin: 2rem 0;
}

.ava-scope table {
  border-collapse: collapse;
  border-spacing: none
}

.ava-scope blockquote,
.ava-scope q {
  quotes: none;
}

.ava-scope blockquote:after,
.ava-scope blockquote:before,
.ava-scope q:after,
.ava-scope q:before {
  content: "";
  content: none;
}

.ava-scope input,
.ava-scope button,
.ava-scope textarea,
.ava-scope select {
  font: inherit;
  line-height: 1.15
}

/* .ava-scope button {
  overflow: visible;
  text-transform: none
} */

.ava-scope button {
  background: transparent;
  border: none;
  padding: 0;
  margin: 0;
  font: inherit;
  color: inherit;
  cursor: pointer;
  /* For cross-browser consistency with form elements in older browsers */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}


.ava-scope details {
  display: block
}

.ava-scope summary {
  list-style: none;
  -webkit-appearance: none;
  appearance: none;
}

summary::-webkit-details-marker {
  display: none;
}

.ava-scope object,
.ava-scope embed,
.ava-scope iframe {
  height: auto;
  max-width: 100%
}

.ava-scope iframe {
  border: 0
}

.ava-scope [hidden] {
  display: none
}

/* Base Default Styles
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope h1,
.ava-scope h2,
.ava-scope .h1,
.ava-scope .h2 {
  font-weight: var(--font-weight-semibold);
}

.ava-scope h1,
.ava-scope .h1 {
  font-size: var(--font-size-h1);
  line-height: var(--line-height-compact);
}

.ava-scope h2,
.ava-scope .h2 {
  font-size: var(--font-size-h2);
  line-height: 1.25;
  text-wrap: balance
}

.ava-scope h3,
.ava-scope .h3 {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-medium);
  font-weight: 600;
  text-wrap: balance
}

.ava-scope h4,
.ava-scope .h4 {
  font-size: var(--font-size-x-small);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-base);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-text-uppercase);
  text-wrap: balance
}

.ava-scope h5,
.ava-scope h6,
.ava-scope .h5 {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-base);
}

.ava-scope :where(h1, h2, h3, h4, h5, h6) a {
  font-weight: inherit
}

.ava-scope ul[class],
.ava-scope ol[class] {
  list-style: none
}

.ava-scope a:not([class]),
.ava-scope .long-url {
  color: inherit;
  text-decoration: underline;
  text-decoration-color: var(--color-text-decoration);
  text-underline-offset: 4px;
  text-decoration-thickness: 1.5px;
  font-weight: 500;
  transition: all .25s ease-in-out
}

.ava-scope a:not([class]):hover,
.ava-scope .long-url:hover {
  color: var(--color-accent);
  text-decoration-color: var(--color-text-decoration-hover);
}

.ava-scope .long-url {
  word-break: break-all;
  overflow-wrap: break-word;
  white-space: normal;
}

.ava-scope a:where(:focus):not([class]),
.ava-scope .long-url:where(:focus) {
  color: var(--color-accent);
  text-decoration-color: var(--color-text-decoration-hover);
  outline: 0;
  background: inherit;
  box-shadow: none;
}

.ava-scope a:where(:focus-visible):not([class]),
.ava-scope .long-url:where(:focus-visible) {
  --primary-focus: rgba(var(--color-accent-rgb), .3);
  box-shadow: 0 0 0 .1875rem var(--primary-focus);
}

.ava-scope mark {
  --mark-color: rgba(var(--color-accent-rgb), .25);
  background-color: var(--mark-color);
  font-weight: 400;
  padding: 0 2px 1px;
}

.ava-scope article,
.ava-scope .article {
  margin-bottom: 2rem;
  padding: var(--box-padding-big);
  border-radius: var(--border-radius-medium);
  box-shadow: var(--shadow-dark);
  border: 1px solid rgba(0, 0, 0, .08);
  box-shadow: rgba(9, 30, 66, 0.08) 0px 0.5rem 1.25rem 0px
}

.ava-scope article>:last-child,
.ava-scope .article>:last-child {
  margin-bottom: 0 ! important;
}

.ava-scope article>:first-child,
.ava-scope .article>:first-child {
  margin-top: 0 ! important;
}

/* Buttons
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .button,
.ava-scope .summary-button {
  font-size: var(--font-size-base);
  font-weight: 500;
  display: inline-block;
  padding: 10px 14px;
  margin-top: .25rem;
  text-align: center;
  line-height: 1.25;
  text-decoration: none;
  border: 1px solid var(--color-border-button-gray);
  border-radius: var(--border-radius-button);
  transition: all .25s ease-in-out
}

.ava-scope .button:hover,
.ava-scope .summary-button:hover {
  background-color: var(--color-background-gray-hover);
  /* outline: 0 */
}

.ava-scope .button:focus,
.ava-scope .summary-button:focus {
  --color-focus: rgba(93, 107, 137, .2);
  --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0), 0 0 0 .1875rem var(--color-focus);
  box-shadow: var(--button-box-shadow);
  border-color: var(--color-border-button-gray);
  /* outline: 0 */
}

.ava-scope .button-gray,
.ava-scope .button-grey {
  border-color: transparent;
  background-color: var(--color-background-gray);
}

.ava-scope .button-gray:hover,
.ava-scope .button-grey:hover {
  background-color: var(--color-background-gray-hover);
}

.ava-scope .button-bright {
  color: #fff;
  background-color: var(--color-accent);
  border-color: var(--color-accent)
}

.ava-scope .button-bright:hover {
  color: #fff;
  background-color: var(--color-accent-dark);
  border-color: var(--color-accent-dark)
}

.ava-scope .button-bright:focus {
  color: #fff;
  background-color: var(--color-accent-dark);
  border-color: var(--color-accent-dark);
  --primary-focus: rgba(var(--color-accent-rgb), .3);
  --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0), 0 0 0 .1875rem var(--primary-focus)
}

.ava-scope .button-contrast {
  color: rgba(255, 255, 255);
  background-color: #070707;
  border-color: #070707;
  outline: 1px solid #dfdfdf;
}

.ava-scope .button-contrast:hover {
  color: #fff;
  background-color: var(--color-accent);
  border-color: var(--color-accent);
}

.ava-scope .button-contrast:focus {
  color: #fff;
  background-color: var(--color-accent);
  border-color: var(--color-accent);
}

.ava-scope .button-group :where(.button, button) {
  width: 100%;
}

.ava-scope .button-group+p {
  margin-top: 1.125rem;
}

@media (min-width: 700px) {
  .ava-scope .button-group {
    display: flex;
    justify-content: flex-end;
    align-items: baseline;
    align-items: stretch;
  }

  .ava-scope .button-group :where(.button, button) {
    width: auto;
  }

  .ava-scope .button-group :is(.button, button):not(:last-child) {
    border-right: 1px solid transparent
  }
}

/* Tooltips setup
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope [data-tooltip]:not(a, button, input) {
  border-bottom: 1px dotted var(--color-text);
  text-decoration: none;
  cursor: help;
  position: relative;
}

.ava-scope [data-tooltip]:after,
.ava-scope [data-tooltip]:before {
  font-style: normal;
  font-family: inherit;
  font-size: var(--font-size-small);
  font-size: .875rem;
  display: block;
  z-index: 99;
  position: absolute;
  top: 100%;
  bottom: auto;
  left: 50%;
  padding: 0.5rem 0.75rem;
  overflow: hidden;
  transform: translate(-50%, .8125rem);
  border-radius: var(--border-radius-small);
  background: #000;
  content: attr(data-tooltip);
  color: #fff;
  opacity: 0;
  pointer-events: none;
  white-space: nowrap;
}

.ava-scope [data-tooltip]:after {
  padding: 0;
  transform: translate(-50%, 0);
  border-radius: 0;
  background-color: transparent;
  content: "";
  color: #000;
  border: .5rem solid transparent;
  border-bottom: .5rem solid;
  width: auto;
}

.ava-scope [data-tooltip]:focus:after,
.ava-scope [data-tooltip]:focus:before,
.ava-scope [data-tooltip]:active::before,
.ava-scope [data-tooltip]:active::after,
.ava-scope [data-tooltip]:hover:after,
.ava-scope [data-tooltip]:hover:before {
  opacity: 1
}

.ava-scope [data-tooltip]:before {
  transition: all .3s ease-in-out;
}

.ava-scope [data-tooltip]:after {
  transition: all .1s ease-in-out;
}

.ava-scope [data-tooltip]:hover:after {
  transition: all .2s .1s ease-in-out;
}

/* Page header: main-banner and discipline details
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .main-banner-wrapper {
  margin-bottom: 40px;
}

.ava-scope .discipline-header {
  width: 100%;
  font-size: var(--font-size-base);
  margin-bottom: 3rem;
}

.ava-scope .discipline-header:last-child {
  margin-bottom: 1.5rem;
}

.ava-scope .main-banner {
  width: 100%;
  min-height: var(--main-banner-min-height);
  position: relative;
  display: flex;
  justify-content: center;
  background: center;
  background-size: cover;
  background-repeat: no-repeat;
  border-radius: 10px;
}

.ava-scope .main-banner .button {
  position: absolute;
  bottom: -20px;
  border-radius: 5px;
  outline: 1px solid #dfdfdf;
}

.ava-scope .main-banner-content {
  width: 100%;
  min-height: var(--banner-min-height);
  padding: 2rem 1rem 2.5rem 1rem;
  color: #fff;
  background-color: rgba(0, 0, 0, .4);
  background: linear-gradient(0deg, #00000066 30%, #ffffff44 200%);
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
}

.ava-scope .course-title {
  font-family: var(--font-family-accent);
  font-size: var(--font-size-small);
  font-weight: var(--font-weight-semibold);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-text-uppercase);
  margin-bottom: 0.25rem;
  text-wrap: balance;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, .25);
}

.ava-scope .discipline-title {
  font-size: var(--font-size-title-main-banner);
  line-height: var(--line-height-compact);
  margin: 0 4% 15px;
  text-wrap: balance;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, .25);
}

.ava-scope .discipline-info-wrapper {
  position: relative;
}

.ava-scope .discipline-info-wrapper::before {
  content: "";
  background: #fff;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 50%;
}

.ava-scope .discipline-info-items {
  position: relative;
  display: grid;
  gap: 1.5rem;
  z-index: 5;
  background-color: #fff;
  margin: 0 auto;
  padding: var(--box-padding-big);
  border: 1px solid var(--color-border-gray);
  box-shadow: var(--shadow-light);
  border-radius: 10px;
}

@media (min-width: 650px) {
  .ava-scope .discipline-info-items {
    grid-template-columns: repeat(2, minmax(1em, 1fr));
  }
}

.ava-scope .discipline-info-items.projeto-integrador {
  grid-template-areas: "time time" "calendar calendar" "tema tema";
  grid-template-columns: 1fr 1fr;
}

@media (min-width: 700px) {
  .ava-scope .discipline-info-items.projeto-integrador {
    grid-template-areas: "time calendar" "tema tema";
    grid-template-columns: 1fr 1fr;
  }
}

.ava-scope .discipline-info-item {
  display: flex;
  margin: 0;
  padding: 0;
  gap: 1rem;
  align-items: center;
}

.ava-scope .discipline-info-item>span {
  font-size: 30px;
  border-radius: 8px;
  padding: 5px;
  background-color: #fafafa;
  color: #3c4043;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, .16);
}

.ava-scope .discipline-info-item p:first-of-type {
  font-family: var(--font-family-accent);
  font-size: var(--font-size-small);
  color: var(--color-text-gray);
}

.ava-scope .discipline-info-item p:last-of-type {
  font-weight: 500;
}

/* Lesson main title block
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .lesson-header {
  display: flex;
  align-items: center;
  position: relative;
  margin: 0 var(--space-horizontal-section) 2rem var(--space-horizontal-section);
}

.ava-scope .lesson-header p {
  font-size: clamp(3.25rem, 7vw, 3.5rem);
  color: var(--color-accent);
  font-weight: 600;
  padding-right: 1rem;
  line-height: 1;
  transform: translateX(3px);
  border-right: 3px solid var(--color-accent);
}

.ava-scope .lesson-header h1 {
  color: var(--color-accent);
  max-width: 34ch;
}

.ava-scope .lesson-header p+h1 {
  padding-left: 1rem;
  border-left: 3px solid var(--color-accent);
}

/* Default section styles (section and section header)
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope section {
  position: relative;
}

.ava-scope .section-banner {
  object-fit: cover;
  width: 100%;
  min-height: 160px;
  border-radius: var(--border-radius-medium);
  margin-bottom: 2rem;
}

.ava-scope section+section {
  margin-top: var(--space-vertical-section)
}

.ava-scope section:last-of-type {
  margin-bottom: var(--space-vertical-section)
}

.ava-scope section+hr {
  margin-top: calc(var(--space-vertical-section) - .5rem);
  margin-bottom: calc(var(--space-vertical-section) - .5rem);
  margin-left: var(--space-horizontal-section);
  margin-right: var(--space-horizontal-section)
}

.ava-scope .lesson-part header {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1.25rem;
  margin: 1.5rem 0;
}

.ava-scope .lesson-part header>img {
  width: 54px;
  height: 54px;
  padding: .8125rem;
  text-align: center;
  background-color: var(--color-accent);
  border-radius: var(--border-radius-large);
  box-shadow: var(--shadow-icon);
}

.ava-scope .lesson-part header.header-purple>img {
  background-color: #6547BA;
}

.ava-scope .lesson-part header.header-yellow>img {
  background-color: #FCD117;
}

.ava-scope .lesson-part header p {
  font-family: var(--font-family-accent);
  font-size: var(--font-size-xx-small);
  font-weight: var(--font-weight-semibold);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing-text-uppercase);
  color: var(--color-accent);
  margin-bottom: .125rem
}

.ava-scope .lesson-part header.header-purple p {
  color: #7155D8;
}

.ava-scope .lesson-part header.header-yellow p {
  color: #FCD117;
}

.ava-scope .lesson-part>*:first-child {
  margin-top: 0;
}

.ava-scope .lesson-part>*:last-child {
  margin-bottom: 0;
}

/* Professor(a) mini-cv block
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .prof-name {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-medium);
  margin-bottom: 2px;
}

.ava-scope .prof-details {
  display: flex;
  align-items: center;
  margin-bottom: 1rem;
}

.ava-scope .prof-details .prof-foto {
  border-radius: 50%;
  margin-right: 20px;
  width: 115px;
  aspect-ratio: 1 / 1;
  background: #f4f4f4;
  box-shadow: var(--shadow-icon);
}

.ava-scope .prof-status {
  margin-bottom: 0;
}

.ava-scope .prof-mini-cv+.prof-details {
  padding-top: 2rem;
  margin-top: 2rem;
  border-top: 1px solid var(--color-border-gray);
}

@media (min-width: 700px) {
  .ava-scope .prof-details {
    margin-bottom: 0;
    align-items: flex-start;
    min-height: 115px;
  }

  .ava-scope .prof-details>div:first-child {
    margin-left: 135px;
  }

  .ava-scope .prof-mini-cv {
    margin-left: 135px;
    margin-top: -45px;
  }
}

/* Banners: "Resumo Visual" and "REA: Projeto Integrador"
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .resumo-visual {
  display: flex;
  column-gap: min(6%, 2.375rem);
  align-items: center;
  padding: 1rem 0.5rem 1rem 1.375rem;
  border: 1px solid;
  border-right: 4px solid;
  border-bottom: 4px solid;
  border-color: var(--color-accent);
  text-decoration: none;
  box-shadow: var(--shadow-light);
  transition: all 0.3s ease-in-out;
  background-image: linear-gradient(180deg, #fff, #fbfbfb 65.62%);
}

.ava-scope .resumo-visual h2 {
  max-width: fit-content;
  color: var(--color-accent);
  font-size: var(--font-size-title-resumo-visual);
  line-height: var(--line-height-compact);
  text-decoration: underline;
}

.ava-scope .resumo-visual p {
  display: none;
}

.ava-scope .resumo-visual img {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 85px;
  flex: 0 0 85px;
  width: 85px;
  max-width: 85px;
}

.ava-scope .resumo-visual:hover {
  transform: translate(0, -3px);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
  background: #fff;
}

.ava-scope .resumo-visual:focus-visible {
  box-shadow: 0 0 0 rgba(0, 0, 0, 0), 0 0 0 .1875rem rgba(var(--color-accent-rgb), .4);
  outline: 0;
}

@media (min-width: 700px) {
  .ava-scope .resumo-visual {
    margin: 0 0 3.5rem 0;
    padding: 1.125rem 2rem 1.125rem 2.5rem;
  }

  .ava-scope .resumo-visual p {
    display: block;
    margin: .25rem 0 0 0;
  }
}

.ava-scope .banner-rea-projeto-integrador {
  width: 100%;
  height: 132px;
  background: right;
  background-size: cover;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  border-radius: 6px;
  transition: transform .3s ease-in-out;
  transition: all 250ms ease-out;
  box-shadow: 0 4px 8px rgba(0, 0, 0, .12);
  margin: 2.25rem 0;
}

.ava-scope .banner-rea-projeto-integrador:hover {
  opacity: 0.9;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.ava-scope .banner-rea-projeto-integrador a {
  width: 100%;
  height: 132px;
  padding: 1rem 1.5rem;
  font-weight: 600;
  font-size: 1.1875rem;
  color: #fff;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-decoration: none;
  align-items: flex-start;
  border-radius: 6px;
}

.ava-scope .banner-rea-projeto-integrador a:hover {
  color: #fff;
}

.ava-scope .banner-rea-projeto-integrador a>span {
  display: none;
}

@media (min-width: 700px) {
  .ava-scope .banner-rea-projeto-integrador a>span {
    display: inline;
    max-width: 45%;
  }

  .ava-scope .banner-rea-projeto-integrador a>span {
    max-width: 45%;
  }
}

/* Schedule: titles and datas of lessons/weeks
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .schedule-section-title {
  margin-bottom: 1.5rem;
}

.ava-scope .discipline-schedule {
  box-shadow: var(--shadow-light);
}

.ava-scope .discipline-schedule li {
  display: grid;
  grid-template-columns: min(25%, 115px) 1fr;
  margin: 0 0 .25rem 0;
  max-width: 100%;
}

.ava-scope .discipline-schedule li>div {
  padding: 1.125rem min(5%, 20px);
}

.ava-scope .lesson-date {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background: var(--color-accent);
  color: #fff;
  font-size: 1.0625rem;
  font-weight: var(--font-weight-semibold);
  border-bottom-left-radius: var(--border-radius-small);
  border-top-left-radius: var(--border-radius-small);
}

.ava-scope .lesson-title {
  font-size: var(--font-size-h3);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-medium);
  border: 1px dashed #e3e3e3;
  border-left: none;
  border-bottom-right-radius: var(--border-radius-small);
  border-top-right-radius: var(--border-radius-small);
  -webkit-transition: background-color .3s cubic-bezier(.3, .1, .3, 1);
  transition: background-color .3s cubic-bezier(.3, .1, .3, 1);
}

.ava-scope .discipline-schedule li:hover .lesson-title {
  background: var(--color-background-gray);
}

.ava-scope .lesson-title::before {
  content: attr(data-week-name) " ";
  font-family: var(--font-family-accent);
  font-weight: var(--font-weight-normal);
  font-size: 1.0625rem;
  margin-bottom: 2px;
  display: block;
  max-width: fit-content;
  color: var(--color-text-gray);
}

/* Intro section (Costurando)
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .intro-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-left: 0;
  margin-right: 0
}

.ava-scope .prof-icon-wrapper {
  width: 150px;
  position: relative;
}

.ava-scope .prof-icon-wrapper:first-child {
  margin-bottom: -75px;
}

.ava-scope .prof-icon {
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  background: #f4f4f4;
  padding: 4px;
  box-shadow: var(--shadow-icon);
}

.ava-scope .prof-speaks {
  flex: auto;
  width: 100%;
  min-height: 10rem;
  padding: 1.5rem 1rem;
  background-color: var(--color-background-gray);
  border-radius: var(--border-radius-small);
}

.ava-scope .prof-icon-wrapper:first-child+.prof-speaks {
  padding-top: 95px;
}

@media (min-width: 700px) {
  .ava-scope .intro-section {
    flex-direction: row-reverse;
    align-items: flex-start;
    margin-left: var(--space-horizontal-section);
    margin-right: var(--space-horizontal-section)
  }

  .ava-scope .prof-icon-wrapper:first-child {
    flex: 1 1 112px;
    min-width: 112px;
    width: 112px;
    padding: 0 0 0 14px;
    margin-bottom: 0;
  }

  .ava-scope .prof-icon-wrapper:before {
    content: "";
    position: absolute;
    top: 37px;
    left: 0;
    width: 0;
    height: 0;
    border-top: 12px solid transparent;
    border-bottom: 12px solid transparent;
    border-left: 12px solid var(--color-background-gray);
  }

  .ava-scope .prof-speaks {
    padding: 2rem 1.5rem;
  }

  .ava-scope .prof-icon {
    padding: 0;
  }

  .ava-scope .prof-icon-wrapper:first-child+.prof-speaks {
    padding-top: 2rem;
  }
}

.ava-scope .learning-goals {
  position: relative;
  padding-bottom: .5rem;
  font-weight: 700;
}

.ava-scope .learning-goals:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, #C3AAB2 0%, #9ec 57.66%, #80C0C8 76.7%, #4B8BFA 100%);
  animation: 15s infinite lineAnimate;
  background-size: 150% 150%;
}

@keyframes lineAnimate {

  0%,
  100% {
    background-position: 0 25%
  }

  25%,
  75% {
    background-position: 50% 50%
  }

  50% {
    background-position: 100% 100%
  }
}

/* Em síntese section
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .personage {
  display: flex;
  flex-direction: column-reverse;
  align-items: center;
  margin: 13.75rem 0 2.5rem 0;
}

.ava-scope .personage-content {
  padding: 2.5rem 1rem;
  min-height: 10rem;
  border-radius: var(--border-radius-small);
  background-color: #eee;
  z-index: 5;
  border-radius: var(--border-radius-large);
}

@media (min-width: 700px) {
  .ava-scope .personage {
    flex-direction: row;
    align-items: flex-start;
    margin: 3.75rem 0 2.5rem 0;
  }

  .ava-scope .personage-content {
    flex: auto;
    padding: 3rem 2rem;
  }
}

.ava-scope .personage-foto-wrapper {
  min-width: 190px;
  position: relative;
}

.ava-scope .personage-foto-wrapper img {
  width: 190px;
  min-width: 190px;
  position: absolute;
  left: 0;
  top: -180px;
  transform: rotate(-40deg);
}

@media (min-width: 700px) {
  .ava-scope .personage-foto-wrapper {
    min-width: 150px;
  }

  .ava-scope .personage-foto-wrapper img {
    width: 190px;
    min-width: 190px;
    position: absolute;
    left: -40px;
    top: -58px;
    transform: none;
  }
}

.ava-scope .mountain-sun {
  display: flex;
  flex-direction: column;
  max-width: 100%;
  min-height: 260px;
  margin: 3rem 0;
  align-items: center;
  position: relative;
  background-color: #edf5fd;
  transition: all 1s;
}

@media (min-width: 700px) {
  .ava-scope .mountain-sun {
    flex-direction: row;
  }
}

.ava-scope .mountain-sun:hover {
  background-color: #c8e9f6;
}

.ava-scope .mountain-sun-content {
  padding: 2rem;
  flex: auto;
  width: 100%;
}

.ava-scope .sun {
  position: absolute;
  border-radius: 50%;
  bottom: 15px;
  right: 50px;
  background-color: #ffeb7f;
  height: 90px;
  width: 90px;
  transition: all ease-in-out .5s;
}

.ava-scope .mountain-sun:hover .sun {
  bottom: 75px;
  background-color: #FFD700;
}

.ava-scope .mountain {
  width: 230px;
  z-index: 1;
  align-self: flex-end;
}

@media (min-width: 700px) {
  .ava-scope .sun {
    height: 105px;
    width: 105px;
    bottom: 25px;
    right: 65px;
  }

  .ava-scope .mountain-sun:hover .sun {
    bottom: 90px;
  }

  .ava-scope .mountain {
    width: 280px;
  }
}

.ava-scope fieldset {
  margin-bottom: 1.5rem;
  border: 0
}

.ava-scope fieldset legend,
.ava-scope label {
  display: block;
  margin-bottom: 1rem;
}

.ava-scope fieldset label:last-child {
  margin-bottom: 0;
}

.ava-scope fieldset legend {
  font-weight: var(--font-weight-bold);
  font-size: var(--font-size-base);
}

.ava-scope label:has([type=checkbox]) {
  width: -moz-fit-content;
  width: fit-content;
  cursor: pointer;
  text-indent: -33px;
  margin-left: 33px;
}

.ava-scope [type=checkbox] {
  appearance: none;
  width: 1.25em;
  height: 1.25em;
  margin-top: -0.25rem;
  margin-inline-end: 0.5em;
  border-width: .125rem;
  vertical-align: middle;
  cursor: pointer;
  /* accent-color: #0172ad; */
}

.ava-scope input {
  --input-background-color: #fbfcfc;
  --input-border-color: #dddedf;
  --input-box-shadow: 0;
  --input-transition: .2s ease-in-out;
  border: .125rem solid var(--input-border-color);
  border-radius: .25rem;
  outline: 0;
  background-color: var(--input-background-color);
  box-shadow: var(--input-box-shadow);
  transition: background-color var(--input-transition), border-color var(--input-transition), color var(--input-transition), box-shadow var(--input-transition);
}

.ava-scope [type=checkbox]:checked,
.ava-scope [type=checkbox]:checked:active,
.ava-scope [type=checkbox]:checked:focus {
  --input-background-color: var(--color-accent);
  --input-border-color: var(--color-accent);
  --input-icon-checkbox: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='rgb(255, 255, 255)' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'%3E%3C/polyline%3E%3C/svg%3E");
  background-image: var(--input-icon-checkbox);
  background-position: center;
  background-size: 0.75em auto;
  background-repeat: no-repeat;
}

.ava-scope input:is([type=checkbox]):focus {
  --input-box-shadow: 0 0 0 .1875rem rgba(var(--color-accent-rgb), .4);
  box-shadow: var(--input-box-shadow);
}

.ava-scope input:is([type=checkbox]):is(:active, :focus) {
  --input-border-color: var(--color-accent);
}

/* Styled text
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .styled-text h1 {
  margin-bottom: 1.5rem;
  margin-top: 3.5rem
}

.ava-scope .styled-text h2 {
  margin-bottom: 1.5rem;
  margin-top: 3rem
}

.ava-scope .styled-text header h2 {
  margin: 0;
}

.ava-scope .styled-text .h2-centered {
  margin: 2.5rem auto 2rem auto;
  text-align: center;
  max-width: min(500px, 90%);
}

.ava-scope .styled-text h3 {
  margin-bottom: var(--space-vertical-paragraph);
  margin-top: 2.75rem;
}

.ava-scope .styled-text :is(h1, h2, h3):first-child,
.ava-scope .styled-text hr+h3 {
  margin-top: 0;
}

.ava-scope .styled-text :where(h4, h5, h6) {
  margin-bottom: var(--space-vertical-paragraph);
}

.ava-scope .styled-text dl {
  margin-bottom: 1rem;
}

.ava-scope .styled-text dt {
  font-weight: var(--font-weight-normal);
  margin-bottom: .5rem;
  margin-top: 1rem;
}

.ava-scope .styled-text dd {
  margin-left: 1rem;
  margin-bottom: .5rem;
}

.ava-scope .styled-text ol,
.ava-scope .styled-text ul {
  list-style-position: outside;
  margin-left: 1.875rem
}

.ava-scope .styled-text ul {
  list-style-type: disc
}

.ava-scope .styled-text ol {
  list-style-type: decimal
}

.ava-scope .styled-text :is(ul, ol):not([class]) li {
  padding-left: 4px;
}

.ava-scope .styled-text :where(ul, ol) li {
  margin-bottom: .5rem;
}

.ava-scope .styled-text :where(ul, ol) li>p {
  margin-bottom: 1.125rem;
}

.ava-scope .styled-text :where(ul, ol) li:last-child,
.ava-scope .styled-text :where(ul, ol) li:last-child>p:last-child {
  margin-bottom: 0;
}

.ava-scope .styled-text li :is(ul, ol) {
  margin-top: .5em
}

.ava-scope .styled-text ul li::marker,
.ava-scope .styled-text ol li::marker {
  color: var(--color-accent)
}

.ava-scope .styled-text ul.list-marker-neutral li::marker,
.ava-scope .styled-text ol.list-marker-neutral li::marker {
  color: rgba(31, 31, 31, .6);
}

.ava-scope .styled-text ul.list-marker-neutral li,
.ava-scope .styled-text ol.list-marker-neutral li {
  padding-left: 4px;
}

.ava-scope .styled-text ol li::marker {
  font-weight: 600;
}

.ava-scope .styled-text :where(ol:not(:last-child), p:not(:last-child), ul:not(:last-child)) {
  margin-bottom: var(--space-vertical-paragraph)
}

.ava-scope .styled-text ul ul,
.ava-scope .styled-text ul ol,
.ava-scope .styled-text ol ul,
.ava-scope .styled-text ol ol {
  margin-left: 1.25rem;
}

.ava-scope .styled-text ul ul {
  list-style-type: circle
}

.ava-scope .styled-text ul ul ul {
  list-style-type: square
}

.ava-scope .styled-text ol ol {
  list-style-type: lower-alpha
}

.ava-scope .styled-text ol ol ol {
  list-style-type: lower-roman
}

.ava-scope .styled-text ol.decimal {
  list-style-type: decimal
}

.ava-scope .styled-text ol.upper-alpha {
  list-style-type: upper-alpha
}

.ava-scope .styled-text ol.lower-alpha {
  list-style-type: lower-alpha
}

.ava-scope .styled-text ol.lower-roman {
  list-style-type: lower-roman
}

.ava-scope .styled-text ol.upper-roman {
  list-style-type: upper-roman
}

.ava-scope .styled-text ul.none,
.ava-scope .styled-text ol.none {
  list-style-type: none
}

.ava-scope .styled-text :where(ol.upper-alpha, ol.lower-alpha, ol.lower-roman, ol.upper-roman, ol.none, ul.none) li {
  padding-left: 4px;
}

.ava-scope .styled-text blockquote {
  font-size: inherit;
  margin: 2rem 0;
  border-left: 5px solid var(--color-accent);
  padding: 0 0 0 1.125rem;
}

@media (min-width: 700px) {
  .ava-scope .styled-text blockquote {
    margin: 2rem 1.125rem 2rem 0;
  }
}

.ava-scope .styled-text blockquote>p:last-of-type {
  margin-bottom: 0
}

.ava-scope .styled-text blockquote>footer {
  color: rgba(33, 33, 35, .7);
  color: var(--color-text-gray);
  font-size: 1rem;
  margin-top: 1rem
}

.ava-scope .styled-text :where(figcaption, caption) {
  line-height: 1.4;
  /* color: var(--color-text-gray); */
  font-size: .9375rem;
  margin-top: .5rem
}

.ava-scope .styled-text :where(figcaption, caption) a {
  text-decoration-color: var(--color-text-decoration-gray);
  font-weight: 400;
}

.ava-scope .styled-text :where(figcaption, caption)>p:not(:last-child) {
  margin-bottom: 1rem
}

.ava-scope .styled-text figcaption .fonte {
  font-size: .75rem;
}

.ava-scope .styled-text figure:has(img) figcaption:not([class]) {
  display: table;
  margin-left: auto;
  margin-right: auto;
}

.ava-scope .styled-text figure:has(img) figcaption:not([class])::before {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='19' viewBox='0 -960 960 960' width='19'%3E%3Cpath d='M480-260q75 0 127.5-52.5T660-440q0-75-52.5-127.5T480-620q-75 0-127.5 52.5T300-440q0 75 52.5 127.5T480-260Zm0-80q-42 0-71-29t-29-71q0-42 29-71t71-29q42 0 71 29t29 71q0 42-29 71t-71 29ZM160-120q-33 0-56.5-23.5T80-200v-480q0-33 23.5-56.5T160-760h126l74-80h240l74 80h126q33 0 56.5 23.5T880-680v480q0 33-23.5 56.5T800-120H160Zm0-80h640v-480H638l-73-80H395l-73 80H160v480Zm320-240Z'/%3E%3C/svg%3E");
  padding-right: 0.5rem;
  display: table-cell;
  vertical-align: baseline;
  position: relative;
  top: 0.25rem;
  opacity: .5;
}

.ava-scope .styled-text .button-group+figcaption {
  margin-top: 1.25rem
}

.ava-scope .styled-text code,
.ava-scope .styled-text pre {
  font-family: var(--font-family-mono);
}

.ava-scope .styled-text :not(pre)>code,
.ava-scope :not(pre)>code {
  background-color: var(--color-background-gray);
  font-weight: inherit
}

.ava-scope .styled-text :not(pre)>code,
.ava-scope :not(pre)>code,
.ava-scope .styled-text kbd {
  font-size: .9375em;
  color: inherit;
  overflow-wrap: break-word;
  overflow-x: auto;
  padding: 1px 6px 2px 6px;
  border-radius: var(--border-radius-medium);
}

.ava-scope .styled-text kbd {
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .1), inset 0 -2px 0 rgba(0, 0, 0, .1);
  font-family: inherit;
  font-weight: 500;
  margin: 0 .2em;
  min-width: 1.625rem
}

.ava-scope .styled-text pre>code {
  border-radius: var(--border-radius-small);
  display: block;
  overflow-wrap: break-word;
  padding: 1.125rem;
  background: var(--color-background-gray);
}

.ava-scope .styled-text iframe,
.ava-scope .styled-text figure img,
.ava-scope .styled-text video {
  border-radius: var(--border-radius-large);
  display: block;
  overflow: hidden
}

.ava-scope .styled-text video,
.ava-scope .styled-text iframe[src*="youtube"],
.ava-scope .styled-text iframe[src$=".mp4"] {
  aspect-ratio: 16 / 9;
  min-width: 100%;
  height: auto;
  min-height: 200px;
  box-shadow: var(--shadow-image);
}

.ava-scope .styled-text figure img {
  margin: 0 auto;
}

.ava-scope .styled-text figure {
  position: relative;
  margin: 1.5rem auto;
}

.ava-scope .styled-text>:first-child {
  margin-top: 0;
}

.ava-scope .styled-text .card-content>p:first-child+figure {
  margin-top: 0;
}

.ava-scope .styled-text>:last-child {
  margin-bottom: 0;
}

/* Tables
 –––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope table {
  margin-bottom: var(--space-vertical-paragraph);
  margin: 0 auto calc(2em + 1vw) auto;
  width: 100%;
}

.ava-scope th,
.ava-scope td {
  text-align: left;
  padding: .875rem 1rem;
}

.ava-scope thead th {
  border-bottom: 1px solid var(--color-border-gray);
  font-weight: var(--font-weight-bold);
  vertical-align: bottom;
}

.ava-scope tr:not(:last-child) {
  border-bottom: 1px solid var(--color-border-gray);
}

.ava-scope :is(th, td):not(:last-child) {
  border-right: 1px solid var(--color-border-gray);
}

.ava-scope .table-no-borders-vertical :is(th, td):not(:last-child) {
  border-right: 0;
}

.ava-scope .table-striped thead th {
  border-bottom: 4px solid #e8e8e8;
  background-color: rgba(0, 0, 0, .04);
}

.ava-scope .table-striped :is(th, td):not(:last-child) {
  border-right: 0;
}

.ava-scope .table-striped tr:not(:last-child) {
  border-bottom: 4px solid #e8e8e8;
}

.ava-scope .table-striped tbody tr:nth-of-type(odd) {
  background-color: transparent;
}

.ava-scope .table-striped tbody tr:nth-child(even) {
  background-color: rgba(0, 0, 0, .04)
}

.ava-scope .table-header-gray th {
  background-color: rgba(0, 0, 0, .04)
}

.ava-scope .table-header-vertical tbody th {
  vertical-align: middle;
  text-align: right;
  border-right: 3px solid var(--color-border-gray);
}

.ava-scope .table-header-vertical th {
  border-bottom: 0;
}

.ava-scope .table-header-vertical tbody td {
  text-align: center;
}

.ava-scope .table-with-borders {
  border: 1px solid var(--color-border-gray);
}

.ava-scope .table-with-borders td:not(:last-child),
.ava-scope .table-with-borders th:not(:last-child) {
  border-right: 1px solid var(--color-border-gray);
}

@media screen and (max-width: 700px) {
  .ava-scope .tablesaw {
    width: 100%;
  }

  .ava-scope .tablesaw thead {
    display: none
  }

  .ava-scope .tablesaw tr {
    display: flex;
    flex-direction: column;
    margin-bottom: 1.375em;
    width: 100%;
    border-radius: 12px;
    border: 1px solid #eee
  }

  .ava-scope .tablesaw tr:last-child {
    margin-bottom: 0;
  }

  .ava-scope .tablesaw td+td {
    padding-top: .25rem;
  }

  .ava-scope .tablesaw td:before {
    content: attr(data-label);
    display: table-cell;
    font-weight: 700;
    padding: 0 1rem 0 0;
    text-align: right
  }

  .ava-scope .tablesaw td:last-child:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0
  }
}

.ava-scope .table-responsive,
.ava-scope .table-wrapper {
  --color-bg: #fff;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  /* background: linear-gradient(to right, var(--color-bg) 30%, rgba(255, 255, 255, 0)), linear-gradient(to right, rgba(255, 255, 255, 0), var(--color-bg) 70%) 0 100%, radial-gradient(farthest-side at 0% 50%, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)), radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)) 0 100%; */
  background-repeat: no-repeat;
  background-size: 40px 100%, 40px 100%, 14px 100%, 14px 100%;
  background-position: 0 0, 100%, 0 0, 100%;
  background-attachment: local, local, scroll, scroll
}

.ava-scope .table-responsive,
.ava-scope .table-wrapper {
  margin-bottom: calc(2em + 1vw);
}

.ava-scope .table-responsive table,
.ava-scope .table-wrapper table {
  min-width: 32rem;
  margin-bottom: 0;
  margin-top: 0;
}

.ava-scope .table-responsive td,
.ava-scope .table-responsive th,
.ava-scope .table-wrapper td,
.ava-scope .table-wrapper th {
  min-width: 8rem
}

.ava-scope .table-responsive [colspan],
.ava-scope .table-responsive [rowspan],
.ava-scope .table-wrapper [colspan],
.ava-scope .table-wrapper [rowspan] {
  min-width: 15rem
}

/* Grids layouts
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .grid-auto,
.ava-scope .grid2col,
.ava-scope .grid-golden-ratio {
  display: grid;
  gap: 1.25rem;
  margin: 1.5rem 0;
}

.ava-scope :is(.grid-auto, .grid2col, .grid-golden-ratio)>* {
  margin-top: 0 ! important;
  margin-bottom: 0 ! important;
}

.ava-scope .grid-highlight>*,
.ava-scope [class*=grid-highlight-]>* {
  border-radius: var(--border-radius-small);
  padding: 1.25rem clamp(1rem, 3%, 1.25rem);
  border-radius: var(--border-radius-medium);
}

.ava-scope .grid-highlight>* {
  background-color: var(--color-background-gray);
}

.ava-scope [class*=grid-highlight-] a,
.ava-scope .grid-highlight a {
  text-decoration-color: var(--color-text-decoration-gray);
}

.ava-scope [class*=grid-highlight] {
  gap: 1.125rem;
}

.ava-scope .grid-golden-ratio {
  row-gap: 1.125rem;
}

.ava-scope .grid-golden-ratio>*:nth-child(odd):not(:first-child) {
  padding-top: .625rem;
}

.ava-scope .grid-auto {
  --min-item-width: 150px;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--min-item-width)), 1fr));
}

@media (min-width: 700px) {
  .ava-scope .grid2col {
    grid-template-columns: repeat(2, minmax(1em, 1fr));
  }

  .ava-scope .grid-golden-ratio {
    grid-template-columns: 32% 1fr;
    column-gap: 6%;
    row-gap: 1.25rem;
  }

  .ava-scope .grid-golden-ratio>*:nth-child(odd):not(:first-child) {
    padding-top: 0;
  }

  .ava-scope .grid-center {
    align-items: center;
  }
}

.ava-scope .flex2col {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.25rem;
  margin: 1.5rem 0;
}

.ava-scope :is(.flex2col)>* {
  margin-top: 0 ! important;
  margin-bottom: 0 ! important;
}

.ava-scope .flex2col>* {
  width: 100%;
}

@media (min-width: 700px) {
  .ava-scope .flex2col>* {
    flex: 1 1 calc(50% - .625rem);
    max-width: calc(50% - .625rem);
    width: calc(50% - .625rem);
  }
}

/* Styled blockquote
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope blockquote.aspas-green {
  background-color: var(--color-background-gray);
  padding: 2.25rem clamp(1.5rem, 5vw, 2.5rem);
  position: relative;
  font-style: normal;
  border: none;
  margin: 2.5rem 0 2rem 0;
}

.ava-scope blockquote.aspas-green:before {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjdweCIgaGVpZ2h0PSIyMXB4IiB2aWV3Qm94PSIwIDAgMjcgMjEiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8ZGVmcz48L2RlZnM+CiAgICA8ZyBpZD0iRGVza3RvcCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCIgZmlsbC1vcGFjaXR5PSIwIj4KICAgICAgICA8ZyBpZD0iMDItLS1Qb3N0IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzc4LjAwMDAwMCwgLTI3NzguMDAwMDAwKSIgc3Ryb2tlPSIjMDBhNWEyIiBmaWxsPSIjRTgyMjNCIj4KICAgICAgICAgICAgPGcgaWQ9InF1cHRlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzNDAuMDAwMDAwLCAyNzg4LjAwMDAwMCkiPgogICAgICAgICAgICAgICAgPHBhdGggZD0iTTM4LjksMy41IEMzOC45LDcuODggNDEuNzgsMTAuNDYgNDUuMDIsMTAuNDYgQzQ4LjAyLDEwLjQ2IDUwLjU0LDcuOTQgNTAuNTQsNC44OCBDNTAuNTQsMS45NCA0OC40NCwtMC4wNCA0NS45MiwtMC4wNCBDNDUuMzIsLTAuMDQgNDQuNzgsMC4wOCA0NC41NCwwLjE0IEM0NS4xNCwtMi4wMiA0Ny42NiwtNC42IDQ5LjU4LC01LjU2IEw0NS43NCwtOC42OCBDNDEuNTQsLTUuNjggMzguOSwtMS40MiAzOC45LDMuNSBaIE01Mi40LDMuNSBDNTIuNCw3Ljg4IDU1LjM0LDEwLjQ2IDU4LjU4LDEwLjQ2IEM2MS41MiwxMC40NiA2NC4wNCw3Ljk0IDY0LjA0LDQuODggQzY0LjA0LDEuOTQgNjIsLTAuMDQgNTkuNDIsLTAuMDQgQzU4LjgyLC0wLjA0IDU4LjI4LDAuMDggNTguMDQsMC4xNCBDNTguNywtMi4wMiA2MS4xNiwtNC42IDYzLjA4LC01LjU2IEw1OS4yNCwtOC42OCBDNTUuMDQsLTUuNjggNTIuNCwtMS40MiA1Mi40LDMuNSBaIiBpZD0i4oCcIj48L3BhdGg+CiAgICAgICAgICAgIDwvZz4KICAgICAgICA8L2c+CiAgICA8L2c+Cjwvc3ZnPg==");
  background-size: 34px 22px;
  content: "";
  position: absolute;
  top: -11px;
  left: clamp(1.25rem, 5vw, 2.25rem);
  width: 34px;
  height: 22px;
}

.ava-scope blockquote.aspas-green.background-green {
  background: var(--color-background-green);
}

/* Custom classes
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}

.ava-scope .flex,
.ava-scope .flex-center,
.ava-scope .flex-column {
  display: flex;
  flex-wrap: wrap;
  column-gap: 1.5rem;
  row-gap: 1rem;
  margin-bottom: 1.5rem
}

.ava-scope :is(.flex, .flex-center, .flex-column)>* {
  margin-top: 0 ! important;
  margin-bottom: 0 ! important;
}

.ava-scope .flex-center {
  justify-content: center;
}

.ava-scope .flex-column {
  flex-direction: column;
}

.ava-scope .flex-icon-text {
  display: flex;
  gap: .75rem;
}

.ava-scope .flex2text {
  display: flex;
  gap: .75rem;
  align-items: baseline;
}

.ava-scope .flex-icon-text .material-symbols-outlined {
  font-size: 24px;
}

.ava-scope .grid-items-center {
  align-items: center;
}

.ava-scope .text-justify {
  text-align: justify;
}

.ava-scope .text-center {
  text-align: center;
}

.ava-scope .text-right {
  text-align: right;
}

.ava-scope .text-left {
  text-align: left;
}

.ava-scope .text-uppercase {
  text-transform: uppercase;
}

.ava-scope .text-xsmall {
  font-size: var(--font-size-xsmall);
}

.ava-scope .text-small {
  font-size: var(--font-size-small);
}

.ava-scope .text-regular {
  font-size: var(--font-size-base);
}

.ava-scope .text-bold {
  font-weight: 700;
}

.ava-scope .text-normal {
  font-weight: 400;
}

.ava-scope .text-oblique {
  font-style: oblique
}

.ava-scope .text-italic {
  font-style: italic
}

.ava-scope .text-large {
  font-size: var(--font-size-h3);
  line-height: var(--line-height-medium);
}

.ava-scope .text-black {
  color: var(--color-text);
}

.ava-scope .text-green {
  color: var(--color-accent);
}

.ava-scope .text-gray {
  color: var(--color-text-gray)
}

.ava-scope .text-light-gray {
  color: var(--color-text-light-gray)
}

.ava-scope .text-yellow {
  color: var(--color-text-yellow) ! important
}

.ava-scope .text-purple {
  color: var(--color-text-purple) ! important
}

.ava-scope .text-blue {
  color: var(--color-text-blue)
}

.ava-scope .text-red {
  color: var(--color-text-red) ! important
}

.ava-scope .background-gray {
  background-color: var(--color-background-gray);
}

.ava-scope .background-green {
  background-color: var(--color-background-green);
}

.ava-scope .background-blue {
  background-color: var(--color-background-blue);
}

.ava-scope .background-yellow {
  background-color: var(--color-background-yellow);
}

.ava-scope .background-purple {
  background-color: var(--color-background-purple);
}

.ava-scope .background-red {
  background-color: var(--color-background-red);
}

.ava-scope .background-art {
  background-image: linear-gradient(0deg, rgba(0, 0, 0, .02) 0%, rgb(255, 255, 255) 100%)
}

.ava-scope .grayscale-1 {
  filter: grayscale(1) contrast(2);
}

.ava-scope .margin-auto {
  margin-left: auto;
  margin-right: auto;
}

.ava-scope .margin-paragraph {
  margin-bottom: var(--space-vertical-paragraph);
}

.ava-scope .margin-top-0 {
  margin-top: 0;
}

.ava-scope .margin-bottom-0 {
  margin-bottom: 0;
}

.ava-scope .full-width {
  width: 100%;
}

.ava-scope .width-auto {
  width: auto;
}

.ava-scope .max-width-400 {
  width: min(100%, 400px);
}

.ava-scope .max-width-500 {
  width: min(100%, 500px);
}

.ava-scope .no-wrap {
  white-space: nowrap
}

.ava-scope .z-index-100 {
  z-index: 100;
}

.ava-scope .styled-text .no-shadow {
  box-shadow: none
}

.ava-scope .katex-display {
  margin: 0 ! important;
  padding: 1.125rem 0;
  overflow-x: auto;
  overflow-y: hidden;
}

.ava-scope .katex {
  color: inherit;
}

/* Styled lists
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope ul.list-unstyled,
.ava-scope ul.list-cards {
  list-style: none;
  margin-left: 0;
}

.ava-scope ul.list-unstyled li {
  padding-left: 1rem;
  margin: 0;
}

.ava-scope ul.list-cards {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  gap: 1.25rem;
  margin: 1.5rem 0;
}

.ava-scope ul[class*=grid-highlight] {
  gap: 1.125rem;
}

.ava-scope ul.list-cards>li {
  padding-left: 1.25rem;
  margin: 0 ! important;
  width: 100%;
}

@media (min-width: 700px) {
  .ava-scope ul.list-cards>li {
    flex: 1 1 calc(50% - .625rem);
    max-width: calc(50% - .625rem);
    width: calc(50% - .625rem);
  }

  .ava-scope li.full-width-card {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
  }
}

.ava-scope ul.list-check>li,
.ava-scope ul.list-checkbox>li,
.ava-scope ul.list-hyphen>li {
  list-style: none;
  position: relative;
  padding-left: .25rem;
}

.ava-scope ul.list-check>li::before {
  display: block;
  position: absolute;
  left: 0;
  width: 24px;
  height: 24px;
  margin-top: 0;
  margin-left: -2rem;
  background-image: url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"rgb(0, 164, 173)\"><path d=\"M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41L9 16.17z\"></path></svg>");
  background-size: 100%;
  content: "";
}

.ava-scope ul.list-checkbox>li:before {
  content: "";
  position: absolute;
  top: 3px;
  left: -1.75rem;
  width: 18px;
  height: 17px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 65.39 61.64'%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill:none;stroke:%2300A5A2;stroke-linecap:round;stroke-linejoin:round;stroke-width:6px;%7D%3C/style%3E%3C/defs%3E%3Cpolyline class='cls-1' points='15.89 29.13 30.35 43.59 62.39 7.04'/%3E%3Cpolyline class='cls-1' points='58.64 34.64 58.64 58.64 3 58.64 3 3 46.97 3'/%3E%3C/svg%3E");
}

.ava-scope ul.list-hyphen>li:before {
  content: "—";
  left: -1.6875rem;
  top: -2px;
  width: auto;
  position: absolute;
  color: var(--color-accent);
  font-size: 1.125rem;
  font-weight: 600;
}

.ava-scope ol.list-styled-numbers {
  padding-left: 0;
  list-style: none;
  counter-reset: item;
  margin-left: 0;
}

.ava-scope ol.list-styled-numbers>li {
  margin-top: 0;
  margin-bottom: 1.125rem;
  margin-left: 36px;
  padding-left: 0;
  counter-increment: item;
}

.ava-scope ol.list-styled-numbers>li::before {
  display: block;
  width: 25px;
  height: 25px;
  line-height: 25px;
  margin-top: -1px;
  margin-right: 10px;
  margin-left: -36px;
  float: left;
  border-radius: 10px;
  background: var(--color-accent);
  background-image: linear-gradient(to left, #00cdc8, #00c3be, #00b9b5, #00afab, #00a5a2);
  color: #fff;
  font-size: .9375rem;
  text-align: center;
  content: counter(item);
}

/* Various cards
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .material-symbols-outlined {
  vertical-align: middle;
}

.ava-scope :where(.card-gray, .card-grey, .card-green, .card-yellow, .card-red, .card-purple, .card-neutral) .fab {
  font-size: 1.25rem;
  vertical-align: middle;
}

.ava-scope aside,
.ava-scope .aside {
  display: flex;
  align-items: center;
  gap: .875rem;
  margin: 1.5rem 0;
  font-size: var(--font-size-small);
  font-style: italic;
}

.ava-scope aside:not([class])>:is(.material-symbols-outlined, span, i),
.ava-scope .aside>:is(.material-symbols-outlined, span, i) {
  color: var(--color-accent);
  font-size: 30px;
}

.ava-scope aside:not([class])>:where(p, div),
.ava-scope .aside>:where(p, div) {
  width: calc(100% - 45px);
}

.ava-scope .art-card {
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.1);
  margin: 1.5rem 0;
  padding: 1.5rem;
}

.ava-scope .art-card>*:first-child {
  margin-top: 0 ! important;
}

.ava-scope .art-card>*:last-child {
  margin-bottom: 0 ! important;
}

.ava-scope :where(.card-gray, .card-grey, .card-green, .card-yellow, .card-red, .card-purple, .card-neutral) {
  margin: 1.5rem 0;
  padding: clamp(1rem, 3vw, 1.25rem);
  border-radius: var(--border-radius-medium);
  box-shadow: var(--shadow-card);
}

.ava-scope :where(.card-gray, .card-grey, .card-green, .card-yellow, .card-red, .card-purple, .card-neutral)>:is(.material-symbols-outlined, span, i) {
  font-size: 30px;
  padding-bottom: .625rem;
}

.ava-scope :is(.card-gray, .card-grey, .card-green, .card-yellow, .card-red, .card-purple, .card-neutral) a {
  text-decoration-color: var(--color-text-decoration-gray);
}

.ava-scope :is(.card-gray, .card-grey, .card-green, .card-yellow, .card-red, .card-purple, .card-neutral) :where(ol:not(:last-child), p:not(:last-child), ul:not(:last-child)),
.ava-scope :is(.card-gray, .card-grey, .card-green, .card-yellow, .card-red, .card-purple, .card-neutral) :where(ul, ol) li>p {
  margin-bottom: .875rem;
}

.ava-scope [class*=card-]>.card-title-left {
  font-weight: 600;
}

@media (min-width: 700px) {
  .ava-scope [class*=card-]>.card-title-left {
    padding-right: 1.5rem;
    flex: 1 1 calc(25% - 14px);
    min-width: calc(25% - 14px);
    width: calc(25% - 14px);
  }
}

.ava-scope [class*=card-] ol:not([class]),
.ava-scope [class*=card-] ul:not([class]) {
  margin-left: 1.25rem;
}

.ava-scope [class*=card-]>:last-child {
  margin-bottom: 0 ! important;
}

.ava-scope [class*=card-]>:first-child {
  margin-top: 0 ! important;
}

@media (min-width: 700px) {
  .ava-scope :where(.card-gray, .card-grey, .card-green, .card-yellow, .card-red, .card-purple, .card-neutral) {
    display: flex;
    gap: .75rem;
  }

  .ava-scope :where(.card-gray, .card-grey, .card-green, .card-yellow, .card-red, .card-purple, .card-neutral)>:is(.material-symbols-outlined, span, i) {
    font-size: 24px;
    width: 24px;
    padding-bottom: 0;
  }

  .ava-scope :where(.card-gray, .card-grey, .card-green, .card-yellow, .card-red, .card-purple, .card-neutral)>:where(div, figure, .card-content, p) {
    flex: auto;
    overflow-x: auto;
  }
}

.ava-scope .card-gray,
.ava-scope .card-grey,
.ava-scope .grid-highlight-gray>*,
.ava-scope .grid-highlight-grey>* {
  background-color: var(--color-background-gray);
}

.ava-scope .card-grey>.material-symbols-outlined,
.ava-scope .card-gray>.material-symbols-outlined {
  color: var(--color-accent);
}

.ava-scope .card-green,
.ava-scope .grid-highlight-green>* {
  background-color: var(--color-background-green);
}

.ava-scope .card-green>.material-symbols-outlined {
  color: var(--color-accent)
}

.ava-scope .card-yellow,
.ava-scope .grid-highlight-yellow>* {
  background-color: var(--color-background-yellow);
}

.ava-scope .card-yellow>.material-symbols-outlined,
.ava-scope .card-yellow :is(ul, ol) li::marker,
.ava-scope .card-yellow ul.list-hyphen>li:before,
.ava-scope .card-yellow a:hover {
  color: var(--color-text-yellow);
  text-decoration-color: var(--color-text-yellow);
}

.ava-scope .card-purple,
.ava-scope .grid-highlight-purple>* {
  background-color: var(--color-background-purple);
}

.ava-scope .card-purple>.material-symbols-outlined,
.ava-scope .card-purple :is(ul, ol) li::marker,
.ava-scope .card-purple ul.list-hyphen>li:before,
.ava-scope .card-purple a:hover {
  color: var(--color-text-purple);
  text-decoration-color: var(--color-text-purple);
}

.ava-scope .card-blue,
.ava-scope .grid-highlight-blue>* {
  background-color: var(--color-background-blue);
}

.ava-scope .card-blue>.material-symbols-outlined,
.ava-scope .card-blue :is(ul, ol) li::marker,
.ava-scope .card-blue ul.list-hyphen>li:before,
.ava-scope .card-blue a:hover {
  color: var(--color-text-blue);
  text-decoration-color: var(--color-text-blue);
}

.ava-scope .card-red,
.ava-scope .grid-highlight-red>* {
  background-color: var(--color-background-red);
}

.ava-scope .card-red>.material-symbols-outlined,
.ava-scope .card-red :is(ul, ol) li::marker,
.ava-scope .card-red ul.list-hyphen>li:before,
.ava-scope .card-red a:hover {
  color: var(--color-text-red);
  text-decoration-color: var(--color-text-red);
}

.ava-scope .card-neutral,
.ava-scope .grid-highlight-neutral>* {
  background-color: #fafafa;
  background-color: rgba(0, 0, 0, 0.03);
}

.ava-scope .card-neutral>.material-symbols-outlined {
  color: var(--color-accent);
}

/* Colored text
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope [class*=text-marked-] {
  --color-background-green: rgba(0, 165, 162, .14);
  --color-background-yellow: rgba(251, 238, 202, .85);
  --color-background-purple: rgba(203, 65, 232, .14);
  --color-background-red: rgba(255, 0, 0, .12);
  font-weight: 500;
  padding: 0 5px 1px 5px;
  border-radius: 6px;
}

.ava-scope .text-marked-purple {
  background-color: var(--color-background-purple);
}

.ava-scope .text-marked-green {
  background-color: var(--color-background-green);
}

.ava-scope .text-marked-yellow {
  background-color: var(--color-background-yellow);
}

.ava-scope .text-marked-blue {
  background-color: var(--color-background-blue);
}

.ava-scope .text-marked-red {
  background-color: var(--color-background-red);
}

/* Accordions (Details)
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .details-group {
  margin-bottom: 1.625rem
}

.ava-scope details {
  margin-top: 1.625rem
}

.ava-scope details+details {
  margin-top: 0
}

.ava-scope details[class]+details[class] {
  margin-top: 4px
}

.ava-scope details+*:not(details) {
  margin-top: 1.625rem;
}

.ava-scope details>:last-child {
  margin-bottom: 0;
}

.ava-scope details:not([class]) {
  border-block: 1px solid var(--color-border-gray);
}

.ava-scope details:not([class])[open] {
  border-bottom: 2px solid var(--color-accent);
}

.ava-scope details:not([class])+details:not([class]) {
  border-block-start: none;
}

.ava-scope details summary {
  position: relative;
  cursor: pointer;
  font-weight: var(--font-weight-semibold);
  padding-right: 50px;
  line-height: var(--line-height-base);
  padding-block: 1rem;
}

.ava-scope details[open] summary {
  margin-bottom: .125rem;
}

.ava-scope details[open] .summary-button {
  margin-bottom: .75rem;
}

.ava-scope details[open] :is(.summary-button + *:not(figure)) {
  margin-top: .5rem;
}

.ava-scope details[open] details:not([open]) summary {
  margin-bottom: 0;
}

.ava-scope details[open] summary+* {
  margin-top: 0;
}

.ava-scope details summary:not(.summary-button) {
  transition: margin 150ms ease-out;
}

.ava-scope details summary:not(.summary-button)>.material-symbols-outlined {
  color: var(--color-accent);
}

.ava-scope details summary:not(.summary-button):hover,
.ava-scope details summary:not(.summary-button):hover>.material-symbols-outlined {
  color: var(--color-accent)
}

.ava-scope details summary.summary-button {
  width: 100%;
  text-align: left;
  margin-top: 0;
  font-weight: var(--font-weight-semibold);
  padding: .75rem 3rem .75rem .875rem;
  line-height: var(--line-height-base);
}

.ava-scope details summary::-webkit-details-marker {
  display: none;
  content: "";
}

.ava-scope details summary::marker {
  display: none;
  content: "";
}

.ava-scope details summary::before,
.ava-scope details summary::after {
  content: "";
  display: block;
  position: absolute;
  top: 0
}

.ava-scope details:not([class])>summary::before {
  width: 34px;
  height: 34px;
  border-radius: var(--border-radius-medium);
  background-color: var(--color-background-gray);
  inset-inline-end: 0;
  inset-block-start: 11px
}

.ava-scope details summary::after {
  width: 8px;
  height: 8px;
  border-bottom: 2px solid currentColor;
  border-right: 2px solid currentColor;
  inset-inline-end: 13px;
  inset-block-start: 23px;
  transform: rotate(45deg)
}

.ava-scope details summary.summary-button::after {
  inset-block-start: 19px;
  inset-inline-end: 14px;
}

.ava-scope details summary:focus {
  outline: none
}

.ava-scope details summary:focus:not(.summary-button)::after {
  color: var(--color-accent)
}

.ava-scope details summary:focus-visible:not(.summary-button) {
  --primary-focus: rgba(var(--color-accent-rgb), .3);
  outline: .1875rem solid var(--primary-focus);
  color: var(--color-accent);
}

.ava-scope details summary:hover::before {
  filter: invert(0.05)
}

.ava-scope details[open][class] {
  margin-bottom: 1.5rem;
}

.ava-scope details[open] summary::after {
  inset-block-start: 10px;
  inset-block-start: 26px;
  transform: rotate(-135deg)
}

.ava-scope details[open] details:not([open]) summary::after {
  inset-block-start: 23px;
  transform: rotate(45deg)
}

.ava-scope details[open]:not([class]) {
  padding-bottom: 1.75rem;
}

.ava-scope details[open] summary.summary-button::after {
  inset-block-start: 23px;
}

.ava-scope details[open] details:not([open]) summary.summary-button::after {
  inset-block-start: 19px;
}

/* Quizzes: Falso/Verdadeiro e Múltipla Escolha
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .quiz-container {
  --color-background-light-gray: rgba(0, 0, 0, .03);
  --color-background-green: rgba(0, 165, 162, .1);
  --color-background-light-green: rgba(0, 165, 162, .03);
  --color-background-light-red: rgba(222, 87, 77, .03);
  margin-bottom: 1.75rem;
}

.ava-scope .quiz-container .quiz-question {
  position: relative;
  display: flex;
  column-gap: .5rem;
  background-color: var(--color-background-green);
  padding: 1.25rem;
  border-radius: var(--border-radius-medium);
  box-shadow: var(--shadow-card);
}

.ava-scope .quiz-container .quiz-question .material-symbols-outlined {
  color: var(--color-accent);
}

.ava-scope .quiz-container .quiz-question+details {
  border-top: 0;
}

.ava-scope .quiz-container details {
  padding: 0 1.25rem;
  margin: 0;
  background: var(--color-background-light-gray);
}

.ava-scope .quiz-container details:not([open]):hover {
  background: var(--color-background-gray);
}

.ava-scope .quiz-container details:not([open]):hover summary::after {
  color: var(--color-accent);
}

.ava-scope .quiz-container details summary {
  padding: 1rem 3rem 1rem 0;
  font-weight: 400;
}

.ava-scope .quiz-container details summary:hover {
  color: inherit;
}

.ava-scope .quiz-container details summary:focus-visible {
  outline: 0;
}

.ava-scope .quiz-container details[open] {
  padding-bottom: 1rem;
  font-size: .9375rem;
}

.ava-scope .quiz-container details[open] summary {
  padding-bottom: 1.125rem;
  margin-bottom: 0;
  font-size: 1rem;
}

.ava-scope .quiz-container details>summary::before {
  display: none;
}

.ava-scope .quiz-container details:not([class]) summary::after {
  width: 24px;
  height: 24px;
  border: none;
  inset-block-start: calc(50% - 12px);
  inset-inline-end: 0;
  transform: none;
  content: "check_box_outline_blank";
  font: normal normal normal 24px / 24px 'Material Symbols Outlined';
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 48;
  -webkit-font-feature-settings: "liga";
  -moz-font-feature-settings: "liga";
  font-feature-settings: "liga";
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  text-transform: none;
  word-wrap: normal;
}

.ava-scope .quiz-container details:not([data-answer="correct"])[open] {
  background: var(--color-background-light-red);
  border-bottom-color: var(--color-text-red);
}

.ava-scope .quiz-container details[data-answer="correct"][open] {
  background: var(--color-background-light-green);
}

.ava-scope .quiz-container details:not([data-answer="correct"])[open] summary::after {
  color: var(--color-text-red);
  content: "not_interested";
}

.ava-scope .quiz-container details[data-answer="correct"][open] summary::after {
  color: var(--color-text-green);
  content: "check";
}

.ava-scope .quiz-container details:not([open]) summary:where(:focus):not([class]):after {
  color: var(--color-text)
}

/* Nav-tabs e nav-tabs-videos navigation
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope .tabs,
.ava-scope .tabs-wrapper {
  margin: 1.5rem 0;
}

.ava-scope h3+.tabs,
.ava-scope h3+.tabs-wrapper {
  margin-top: 0;
}

.ava-scope .tabs-nav-content>:last-child {
  margin-bottom: 0 ! important;
}

.ava-scope ul.tabs-nav {
  border-bottom: 1px solid var(--color-border-gray);
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
  margin: 0 0 1.5rem 0;
  list-style: none;
}

.ava-scope ul.tabs-nav li {
  list-style: none;
  margin-bottom: 0;
}

.ava-scope ul.tabs-nav li::before {
  content: "";
}

.ava-scope ul.tabs-nav li:hover {
  background: var(--color-background-gray);
}

.ava-scope ul.tabs-nav :where(a, button) {
  display: block;
  padding: .75rem 1rem .5rem 1rem;
  text-decoration: none;
  color: var(--color-text);
  border-bottom: 4px solid transparent;
}

.ava-scope ul.tabs-nav li.active :where(a, button),
.ava-scope ul.tabs-nav [aria-selected="true"] {
  border-bottom: 4px solid var(--color-accent);
}

.ava-scope ul.tabs-nav li.active :where(a, button) {
  color: var(--color-accent);
}

.ava-scope ul.tabs-nav :where(a, button):hover {
  color: var(--color-text)
}

.ava-scope ul.tabs-nav-vertical {
  border-bottom: 1px solid var(--color-border-gray);
  padding-left: 0;
  margin: 0 0 1.5rem 0;
  list-style: none;
  font-size: .9375rem;
}

.ava-scope ul.tabs-nav-vertical li {
  list-style: none;
  margin-bottom: 0;
  border-top: 1px solid var(--color-border-gray);
  line-height: 2.25;
  transition: background-color 0.3s ease;
}

.ava-scope ul.tabs-nav-vertical li:hover {
  background: var(--color-background-gray);
}

.ava-scope ul.tabs-nav-vertical li.active,
.ava-scope ul.tabs-nav-vertical [aria-selected="true"] {
  background-image: url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"24\" viewBox=\"0 -960 960 960\" width=\"24\" fill=\"rgb(0, 164, 173)\"><path d=\"M320-200v-560l440 280-440 280Zm80-280Zm0 134 210-134-210-134v268Z\"/></svg>");
  background-repeat: no-repeat;
  background-position: 0 50%;
}

.ava-scope ul.tabs-nav-vertical :where(a, button) {
  padding: .5rem 1rem .5rem 1.875rem;
  text-decoration: none;
  color: var(--color-text);
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: normal;
  transition: none;
  text-align: left;
  width: 100%;
}

.ava-scope ul.tabs-nav-vertical li.active :where(a, button),
.ava-scope ul.tabs-nav-vertical [aria-selected="true"] {
  color: var(--color-accent);
}

.ava-scope ul.tabs-nav-vertical :where(a, button):hover {
  color: var(--color-text)
}

.ava-scope ul.tabs-nav :where(a, button):focus,
.ava-scope ul.tabs-nav-vertical :where(a, button):focus {
  outline: 0;
}

.ava-scope ul.tabs-nav :where(a, button):focus-visible,
.ava-scope ul.tabs-nav-vertical :where(a, button):focus-visible {
  --primary-focus: rgba(var(--color-accent-rgb), .3);
  --button-box-shadow: 0 0 0 rgba(0, 0, 0, 0), 0 0 0 .1875rem var(--primary-focus);
  box-shadow: var(--button-box-shadow);
}

/* Styled code
–––––––––––––––––––––––––––––––––––––––––––––––––– */
.ava-scope code,
.ava-scope pre {
  position: relative;
  font-size: .9375rem;
  white-space: pre;
}

.ava-scope pre code {
  overflow-x: auto;
}

.ava-scope pre[class] {
  tab-size: 2;
  padding: 40px 0 0;
  border-radius: 3px;
  background-color: #272727;
  -ms-overflow-style: scrollbar;
}

.ava-scope pre[class]:before {
  position: absolute;
  padding: 0 5px 0 18px;
  height: 44px;
  line-height: 44px;
  width: 100%;
  top: 0;
  left: 0;
  content: attr(data-lang);
  font-family: var(--font-family-base);
  font-size: .875rem;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px;
  background-color: rgba(52, 53, 65, 0.95);
  color: rgba(217, 217, 227, 1);
}

.ava-scope :not(pre)>code[class*="language-"] {
  background: rgba(246, 246, 246, 0.3)
}

.ava-scope pre .button-contrast {
  position: absolute;
  font-family: var(--font-family-base);
  font-size: .875rem;
  padding: 5px 22px;
  height: 33px;
  right: 6px;
  top: 6px;
  border-color: #272727;
  border-radius: 6px;
  outline: 0;
  color: rgba(217, 217, 227, 1);
  background: #272727;
}

.ava-scope pre[class*=language-] {
  border-radius: 6px;
  overflow: auto
}

.ava-scope :not(pre)>code[class*=language-] {
  border-radius: 6px;
  padding: .125rem;
  white-space: normal
}

.ava-scope code[class*=language-],
.ava-scope pre[class*=language-] {
  font-size: .875rem;
  text-shadow: none;
  color: #fff;
  background-color: var(--color-background-code);
  text-align: left;
  white-space: pre;
  word-spacing: normal;
  word-break: normal;
  word-wrap: normal;
  -moz-tab-size: 4;
  -o-tab-size: 4;
  tab-size: 4;
  -webkit-hyphens: none;
  -moz-hyphens: none;
  -ms-hyphens: none;
  hyphens: none
}

.ava-scope pre[class*=code-]::-moz-selection,
.ava-scope pre[class*=code-] ::-moz-selection,
.ava-scope code[class*=language-]::-moz-selection,
.ava-scope code[class*=language-] ::-moz-selection {
  text-shadow: none;
  background: rgba(29, 59, 83, .99);
  color: #fff;
}

.ava-scope pre[class*=code-]::selection,
.ava-scope pre[class*=code-] ::selection,
.ava-scope code[class*=language-]::selection,
.ava-scope code[class*=language-] ::selection {
  text-shadow: none;
  background: rgba(29, 59, 83, .99);
  color: #fff;
}

.ava-scope pre code[class*=language-]::-webkit-scrollbar {
  height: 8px;
}

.ava-scope pre code[class*=language-]::-webkit-scrollbar {
  height: 8px;
}

.ava-scope pre code[class*=language-]::-webkit-scrollbar-thumb {
  background: var(--color-accent);
}

.ava-scope pre code[class*=language-]::-webkit-scrollbar-thumb:hover {
  --color-accent-shade: rgba(33, 186, 114, 0.16);
  background: var(--color-accent-shade);
}

.ava-scope .token.comment,
.ava-scope .token.prolog,
.ava-scope .token.cdata {
  color: #637777;
  font-style: italic
}

.ava-scope .token.punctuation {
  color: #c792ea
}

.ava-scope .namespace {
  color: #b2ccd6
}

.ava-scope .token.deleted {
  color: #ef53508f;
  font-style: italic
}

.ava-scope .token.symbol,
.ava-scope .token.property {
  color: #80cbc4
}

.ava-scope .token.tag,
.ava-scope .token.operator,
.ava-scope .token.keyword {
  color: #7fdbca
}

.ava-scope .token.boolean {
  color: #ff5874
}

.ava-scope .token.number {
  color: #f78c6c
}

.ava-scope .token.constant,
.ava-scope .token.function,
.ava-scope .token.builtin,
.ava-scope .token.char {
  color: #82aaff
}

.ava-scope .token.selector,
.ava-scope .token.doctype {
  color: #c792ea;
  font-style: italic
}

.ava-scope .token.attr-name,
.ava-scope .token.inserted {
  color: #addb67;
  font-style: italic
}

.ava-scope .token.string,
.ava-scope .token.url,
.ava-scope .token.entity,
.ava-scope .language-css .token.string,
.ava-scope .style .token.string {
  color: #addb67
}

.ava-scope .token.class-name,
.ava-scope .token.atrule,
.ava-scope .token.attr-value {
  color: #ffcb8b
}

.ava-scope .token.regex,
.ava-scope .token.important,
.ava-scope .token.variable {
  color: #d6deeb
}

.ava-scope .token.important,
.ava-scope .token.bold {
  font-weight: 700
}

.ava-scope .token.italic {
  font-style: italic
}

/* Print styles
–––––––––––––––––––––––––––––––––––––––––––––––––– */
@media print {
  @page {}

  .ava-scope a,
  .ava-scope a:visited {
    text-decoration: underline;
  }

  .ava-scope a[href^="#"]:after {
    content: "";
  }

  .ava-scope p,
  .ava-scope h1,
  .ava-scope h2,
  .ava-scope h3 {
    orphans: 3;
    widows: 3;
  }

  .ava-scope h1,
  .ava-scope h2,
  .ava-scope h3 {
    page-break-after: avoid;
  }

  .ava-scope pre,
  .ava-scope blockquote,
  .ava-scope [class*=card-],
  .ava-scope [class*=grid-]>* {
    page-break-inside: avoid;
  }

  .ava-scope thead {
    display: table-header-group;
  }

  .ava-scope tr,
  .ava-scope img {
    page-break-inside: avoid;
  }
}