.edu-platform{
    width: 100%;
    height: calc(100dvh - 70px - 2rem);
    border-radius: 1rem;
    /* background-color: #FEFAF4; */
    background: linear-gradient(to right, #C9D8BC, #B3C2D1 50%, #DABEA2);
    /* background-color: #E0B06C; */
    overflow: hidden;
    position: relative;
    /* position: sticky;
    top: calc(70px + 1rem); */
    box-shadow: 0 0 0.25rem 0.25rem rgb(0 0 0 / 0.1);
}
.edu-platform-bar{
    width: 30%;
    height: calc(0.25 * var(--base));
    border-radius: calc(0.125 * var(--base));
    background-color: var(--gray5);
    opacity: 0.5;
    z-index: 40;
    position: absolute;
    bottom: calc(0.5 * var(--base));
    left: 50%;
    transform: translateX(-50%);
}

/* nav */
.edu-platform-nav{
    background-color: #F2EBE1;
    display: flex;
    justify-content: space-evenly;
    position: absolute;
    left: 0;
    bottom: 0;
}
body[data-screen="mobile"] .edu-platform-nav{
    width: 100%;
    padding: calc(0.5 * var(--base)) 0 calc(1.25 * var(--base)) 0;
    flex-direction: row;
}
body[data-screen="desktop"] .edu-platform-nav{
    height: 100%;
    padding: 0 calc(0.5 * var(--base));
    flex-direction: column;
}
.edu-platform-nav-item{
    width: calc(4 * var(--root));
    height: calc(2.5 * var(--root) + 0.5 * var(--base));
    padding: calc(0.5 * var(--base));
    border-radius: calc(0.25 * var(--base));
    box-shadow: 0 0.25rem 0 0 #e6e2dc;
    cursor: pointer;
    transition: background-color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}
.edu-platform-nav-item[data-active="true"]{
    background-color: #FBE9CE;
    box-shadow: 0 0.25rem 0 0 #E4D7C4;
}
.edu-platform-nav-item:active{
    box-shadow: none;
    transform: translateY(0.25rem);
}
.edu-platform-nav-item-img {
    width: calc(1.5 * var(--root));
    aspect-ratio: 1 / 1;
    display: block;
}
.edu-platform-nav-item-label span{
    font-size: calc(0.8 * var(--root));
    font-weight: bold;
    color: #BF8D4E;
}
.edu-platform-nav-item[data-active="false"] span{
    color: #909090 !important;
}
.edu-platform[data-lang="zh"] .en{
    display: none;
}
.edu-platform[data-lang="en"] .zh{
    display: none;
}
.edu-platform[data-accessibility="true"]{
    --root: 21px !important;
}

/* main-container */
.main-container{
    /* width: calc(100% - 4 * var(--base)); */
    /* height: calc(100% - 5.25 * var(--root) - 11 * var(--base)); */
    /* height: calc(100% - 5.25 * var(--root) - 9.25 * var(--base)); */
    /* padding: calc(4 * var(--base)) calc(2 * var(--base)) 0 calc(2 * var(--base)); */
    /* padding: calc(4 * var(--base)) calc(2 * var(--base)) calc(5.25 * var(--root) + 7 * var(--base)) calc(2 * var(--base)); */
    overflow-y: scroll;
    scrollbar-width: none;
}
body[data-screen="mobile"] .main-container{
    width: 100%;
    height: calc(100% - 2.75 * var(--root) - 3.25 * var(--base));
    /* height: calc(100% - 5.25 * var(--root) - 5.25 * var(--base)); */
}
body[data-screen="desktop"] .main-container{
    /* width: calc(100% - 4 * var(--root) - 2 * var(--base)); */
    width: 100%;
    height: 100%;
    /* padding: 0 0 0 calc(4 * var(--root) + 2 * var(--base)); */
}

/* main */
.main{
    /* overflow-y: scroll; */
    /* scrollbar-width: none; */
    display: none;
}
.main.active {
    display: flex;
}

/* main-home */
.main[data-refersto="home"] {
    height: fit-content;
    /* max-height: calc(100% - 5.25 * var(--root) - 11 * var(--base)); */
    /* padding: 4rem 2rem 11.25rem 2rem; */
    /* padding: calc(4 * var(--base)) calc(2 * var(--base)) calc(5.25 * var(--root) + 7 * var(--base)) calc(2 * var(--base)); */
    padding: calc(4 * var(--base)) calc(2 * var(--base)) 0 calc(2 * var(--base));
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: calc(3 * var(--base));
}
body[data-screen="desktop"] .main[data-refersto="home"]{
    padding: calc(2 * var(--base)) calc(1.25 * var(--base)) calc(2.75 * var(--root) + 3.25 * var(--base)) calc(1.25 * var(--base));
}
.greeting {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: calc(0.5 * var(--base));
}
.today span {
    font-size: calc(1.25 * var(--root));
}
.date span {
    font-size: var(--root);
    color: #909090;
}
.last-time {
    width: 100%;
    display: none;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: var(--base);
}
.last-time.active {
    display: flex;
}
.last-time-title span {
    font-size: calc(1.5 * var(--root));
    text-align: left;
}
.last-time-course {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    gap: var(--base);
    position: relative;
}
.last-time-course:active::after{
    content: "";
    width: 100%;
    height: 100%;
    border: 0.125rem solid var(--gray9);
    border-radius: 0.25rem;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.last-time-course-img {
    width: calc(8 * var(--base));
    background-color: #FDF3E4;
    object-fit: cover;
    aspect-ratio: 16 / 9;
    border-radius: calc(0.25 * var(--base));
    display: block;
    flex-shrink: 0;
}
.last-time-course-info {
    width: calc(100% - 9 * var(--base));
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: calc(0.5 * var(--base));
    flex-shrink: 0;
}
.last-time-course-info-title span {
    font-size: var(--root);
    font-weight: bold;
    text-align: justify;
}
.last-time-course-info-chapter span {
    font-size: calc(0.7 * var(--root));
    text-align: justify;
    color: var(--gray7);
}
.courses {
    width: 100%;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: var(--base);
}
.courses-header{
    width: calc(100% - 2 * var(--base) - 2 * var(--root));
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: var(--base);
}
.courses-header-logo{
    height: calc(5 * var(--root));
    display: block;
}
.courses-header-expand{
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: calc(0.25 * var(--base));
}
.courses-app span{
    font-family: LimeLight;
    font-size: calc(2 * var(--root));
    letter-spacing: calc(-0.1 * var(--root));
}
.courses-title span {
    font-family: Belleza;
    font-size: calc(2 * var(--root));
    font-weight: bold;
    text-align: left;
}
.courses-description span {
    font-size: calc(1 * var(--root));
    line-height: 175%;
    text-align: justify;
}
.courses-panel {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: var(--base);
    flex-wrap: wrap;
}
.courses-panel-item {
    padding: calc(0.25 * var(--base)) calc(0.75 * var(--base));
    border-radius: calc(0.25 * var(--base));
    background-color: #FDF3E4;
    cursor: pointer;
    transition: background-color 0.3s ease;
}
.courses-panel-item:hover {
    background-color: #BF8D4E;
}
.courses-panel-item.active {
    background-color: #BF8D4E;
    cursor: default;
}
.courses-panel-item span {
    font-size: var(--root);
    white-space: nowrap;
    transition: color 0.3s ease;
}
.courses-panel-item:hover span {
    color: #FDF7ED;
}
.courses-panel-item.active span {
    color: #FDF7ED;
}
.courses-list {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: var(--base);
}
.courses-series{
    padding: calc(0.5 * var(--base));
    width: calc(100% - var(--base));
    border-radius: calc(0.75 * var(--base));
    box-shadow: calc(0.375 * var(--base)) calc(0.375 * var(--base)) calc(0.3 * var(--base)) 0 rgb(0 0 0 / 0.1);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: calc(0.5 * var(--base));;
}
.courses-series-title{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: calc(0.5 * var(--base));;
}
.courses-series-title span{
    font-size: calc(0.9 * var(--root));
    font-weight: bold;
    /* color: #FFFFFF; */
}
.courses-series-icon{
    width: calc(1.5 * var(--base));
    aspect-ratio: 1 / 1;
    display: inline-block;
}
.courses-series-playlist{
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    gap: calc(0.5 * var(--base));
}
.courses-series-playlist-item{
    flex: 1;
    padding: calc(0.25 * var(--base)) 0;
    background-color: var(--bg);
    border-radius: calc(0.25 * var(--base));
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
}
.courses-series-playlist-item:hover{
    transform: translateY(calc(-0.25 * var(--base)));
}
.courses-series-playlist-item span{
    font-size: 0.8rem;
    font-weight: bold;
    color: var(--text-color);
}
.courses-item {
    width: 100%;
    display: none;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    gap: var(--base);
    position: relative;
}
.courses-item.active {
    display: flex;
}
.courses-item:active::after{
    content: "";
    width: 100%;
    height: 100%;
    border: 0.125rem solid var(--gray9);
    border-radius: 0.25rem;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.courses-item-img {
    width: calc(8 * var(--base));
    aspect-ratio: 16 / 9;
    /* background-color: #FDF3E4; */
    border-radius: calc(0.25 * var(--base));
    overflow: hidden;
    position: relative;
}
.courses-item-img img {
    width: 100%;
    /* object-fit: cover; */
    display: block;
}
.courses-item-img::after {
    content: attr(data-span);
    padding: calc(0.2 * var(--root));
    background-color: var(--gray9);
    border-radius: calc(0.2 * var(--root));
    opacity: 0.75;
    color: #FEFAF4;
    font-size: calc(0.6 * var(--root));
    position: absolute;
    right: calc(0.25 * var(--root));
    bottom: calc(0.25 * var(--root));
}
.courses-item-info {
    width: calc(100% - 9 * var(--base));
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: calc(0.5 * var(--base));
}
.courses-item-info-title span {
    font-size: calc(0.9 * var(--root));
    font-weight: bold;
    text-align: justify;
}
.courses-item-info-chapter span {
    font-size: calc(0.7 * var(--root));
    text-align: justify;
    color: var(--gray7);
}
.courses-item-info-expand span {
    font-size: calc(0.8 * var(--root));
    text-align: justify;
    color: #909090;
}

/* main-about */
.main[data-refersto="about"] {
    /* background-color: #FBE9CE; */
    /* padding: calc(8 * var(--base)) 0 0 0; */
    position: relative;
}
body[data-screen="mobile"] .main[data-refersto="about"]{
    padding: calc(12 * var(--base)) 0 0 0;
}
body[data-screen="desktop"] .main[data-refersto="about"]{
    padding: calc(12 * var(--base)) calc(1.25 * var(--base)) 0 calc(1.25 * var(--base));
}
.team-logo {
    width: calc(8 * var(--base));
    aspect-ratio: 1 / 1;
    position: absolute;
    top: calc(8 * var(--base));
    left: calc(50% - 4 * var(--base));
}
.team-logo-img {
    width: 100%;
    aspect-ratio: 1 / 1;
    display: block;
}
.about-main {
    border-radius: calc(2 * var(--base)) calc(2 * var(--base)) 0 0;
    /* padding: calc(5.5 * var(--base)) calc(2 * var(--base)) calc(5.25 * var(--root) + 7 * var(--base)) calc(2 * var(--base)); */
    background-color: #FEFAF4;
    display: flex;
    flex-direction: column;
    gap: calc(2 * var(--base));
}
body[data-screen="mobile"] .about-main{
    width: calc(100% - 4 * var(--base));
    padding: calc(5.5 * var(--base)) calc(2 * var(--base)) 0 calc(2 * var(--base));
}
body[data-screen="desktop"] .about-main{
    width: 100%;
    padding: calc(5.5 * var(--base)) 0 0 0;
}
.team-info {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: var(--base);
}
.team-name {
    font-size: calc(1.5 * var(--root));
    font-weight: bold;
    text-align: center;
}
.team-affiliation span {
    font-size: calc(0.8 * var(--root));
}
.team-social-media {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: calc(1.5 * var(--base));
}
.team-social-medium {
    width: calc(1.5 * var(--base));
    aspect-ratio: 1 / 1;
    overflow: hidden;
    cursor: pointer;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
.team-social-medium-img {
    width: 100%;
    aspect-ratio: 1 / 1;
    display: block;
}
.team-intro {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: calc(0.5 * var(--base));
}
.team-intro-title span {
    font-size: calc(1.25 * var(--root));
    font-weight: bold;
    text-align: left;
}
.team-intro-description span {
    font-size: calc(0.8 * var(--root));
    text-align: left;
}
/* .team-courses {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: var(--base);
}
.team-courses-panel {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}
.team-courses-panel-title span {
    font-size: calc(1.25 * var(--root));
    font-weight: bold;
}
.team-courses-panel-more {
    width: calc(3 * var(--root));
    height: var(--root);
    padding: calc(0.5 * var(--base));
    border-radius: calc(0.5 * var(--root) + 0.5 * var(--base));
    background-color: #BF8D4E;
    cursor: pointer;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
.team-courses-panel-more span {
    font-size: calc(0.8 * var(--root));
    color: #FEFAF4;
    text-align: center;
}
.team-courses-list {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: var(--base);
}
.team-courses-item {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    gap: var(--base);
}
.team-courses-item-img {
    width: calc(8 * var(--base));
    aspect-ratio: 16 / 9;
    background-color: #FDF3E4;
    object-fit: cover;
    border-radius: calc(0.5 * var(--base));
}
.team-courses-item-info {
    width: calc(100% - 9 * var(--base));
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: calc(0.5 * var(--base));
}
.team-courses-item-info-title span {
    font-weight: bold;
    text-align: left;
}
.team-courses-item-info-expand span {
    font-size: calc(0.8 * var(--root));
    text-align: left;
    color: #909090;
} */

/* main-settings */
.main[data-refersto="settings"] {
    /* max-height: calc(100dvh - 5.25rem - 11 * var(--base)); */
    /* padding: calc(4 * var(--base)) calc(2 * var(--base)) calc(5.25rem + 7 * var(--base)) calc(2 * var(--base)); */
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
}
body[data-screen="mobile"] .main[data-refersto="settings"]{
    width: calc(100% - 4 * var(--base));
    padding: calc(4 * var(--base)) calc(2 * var(--base)) 0 calc(2 * var(--base));
}
body[data-screen="desktop"] .main[data-refersto="settings"]{
    width: calc(100% - 2.5 * var(--base));
    padding: calc(4 * var(--base)) calc(1.25 * var(--base)) 0 calc(1.25 * var(--base));
}
.settings-return{
    width: calc(2 * var(--root));
    aspect-ratio: 1 / 1;
    padding: calc(0.5 * var(--base));
    border-radius: calc(0.25 * var(--base));
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: calc(1.25 * var(--base));
    right: calc(1.25 * var(--base));
}
.settings-return svg{
    width: calc(2 * var(--root));
    aspect-ratio: 1 / 1;
}
.settings-item {
    width: 100%;
    padding: var(--base) 0;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: calc(0.5 * var(--base));
}
.settings-item-label {
    display: flex;
    flex-direction: column;
}
.settings-item-label-title span {
    font-size: calc(1.25 * var(--root));
    font-weight: bold;
}
.settings-item-label-description span {
    font-size: calc(0.8 * var(--root));
    color: #909090;
}
.settings-item-choice {
    padding: calc(0.5 * var(--base));
    border-radius: calc(0.5 * var(--base));
    background-color: #FDF3E4;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: calc(0.5 * var(--base));
}
.settings-item-choice-item {
    padding: calc(0.5 * var(--base));
    border-radius: calc(0.5 * var(--base));
}
.settings-item-choice-item, .settings-item-choice-item span {
    font-size: var(--root);
    white-space: nowrap;
}
.edu-platform[data-lang="zh"] span[data-langchoice="zh"], .edu-platform[data-lang="en"] span[data-langchoice="en"]{
    background-color: #BF8D4E;
}
.edu-platform[data-lang="zh"] span[data-langchoice="zh"] span, .edu-platform[data-lang="en"] span[data-langchoice="en"] span{
    color: #FEFAF4;
}
.edu-platform[data-accessibility="true"] span[data-accessibility="on"], .edu-platform[data-accessibility="false"] span[data-accessibility="off"]{
    background-color: #BF8D4E;
}
.edu-platform[data-accessibility="true"] span[data-accessibility="on"] span, .edu-platform[data-accessibility="false"] span[data-accessibility="off"] span{
    color: #FEFAF4;
}

/* player */
.player {
    height: calc(100% - 4 * var(--base));
    padding: calc(2 * var(--base)) calc(2 * var(--root));
    /* background-color: #FEFAF4; */
    background: linear-gradient(to right, #C9D8BC, #B3C2D1 50%, #DABEA2);
    z-index: 20;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: calc(2 * var(--base));
    position: absolute;
    top: 100%;
    left: 0;
    transition: top 0.3s ease;
}
body[data-screen="mobile"] .player{
    width: calc(100% - 4 * var(--root));
}
body[data-screen="desktop"] .player{
    /* width: calc(100% - 8 * var(--root) - 2 * var(--base)); */
    width: calc(100% - 4 * var(--root));
    /* margin: 0 0 0 calc(4 * var(--root) + 2 * var(--base)); */
}
.player-push {
    width: calc(1.5 * var(--root));
    aspect-ratio: 1 / 1;
}
.player-main {
    width: 100%;
    height: calc(100% - 3.5 * var(--root));
    overflow: scroll;
    scrollbar-width: none;
    display: none;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: calc(2 * var(--base));
}
.player-main.active {
    display: flex;
}
.player.active {
    top: 0;
}

/* edu-platform-float */
.player-float {
    height: calc(2.75 * var(--root) + 1.5 * var(--base));
    border-radius: calc(0.25 * var(--base));
    background-color: #FDF3E4;
    z-index: 10;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: absolute;
}
body[data-screen="mobile"] .player-float{
    width: calc(100% - 4 * var(--base));
    left: 50%;
    bottom: calc(1.25 * var(--base));
    /* bottom: calc(2.5 * var(--root) + 3.25 * var(--base)); */
    transform: translate(-50%, 0);
}
body[data-screen="desktop"] .player-float{
    /* width: calc(100% - 4 * var(--root) - 4.5 * var(--base)); */
    width: calc(100% - 2.5 * var(--base));
    /* left: calc(4 * var(--root) + 3.25 * var(--base)); */
    left: calc(1.25 * var(--base));
    bottom: calc(1.25 * var(--base));
}
.player-float-main {
    width: calc(100% - var(--base));
    height: calc(2.5 * var(--root) + 0.5 * var(--base));
    padding: calc(0.5 * var(--base));
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: calc(0.5 * var(--base));
}
.player-float-cover {
    width: calc(2.5 * var(--root) + 0.5 * var(--base));
    aspect-ratio: 1 / 1;
    border-radius: calc(0.25 * var(--base));
    overflow: hidden;
}
.player-float-cover img {
    width: calc(2.5 * var(--root) + 0.5 * var(--base));
    aspect-ratio: 1 / 1;
    display: block;
}
.player-float-info {
    width: calc(100% - 7 * var(--root) - 5.5 * var(--base));
    height: calc(2.5 * var(--root) + 0.5 * var(--base));
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}
.player-float-title {
    width: 100%;
    flex-grow: 0;
    font-size: var(--root);
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
}
.player-float-title span{
    font-weight: bold;
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 100%;
    /* animation: text-scroll linear 5s infinite; */
}
.player-float-chapter {
    width: 100%;
    flex-grow: 0;
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
}
.player-float-chapter span {
    color: var(--gray7);
    font-size: calc(0.7 * var(--root));
    white-space: nowrap;
    text-overflow: ellipsis;
    width: 100%;
}
.player-float-bt {
    width: calc(1.5 * var(--root));
    aspect-ratio: 1 / 1;
    padding: calc(0.5 * var(--base));
    border-radius: 50%;
    opacity: 0.5;
    transition: opacity 0.3s ease;
}
.player-float-bt.active {
    cursor: pointer;
    opacity: 1;
}
.player-float-bt.active:hover {
    background-color: #FBE9CE;
}
.player-float-bt img {
    width: calc(1.5 * var(--root));
    aspect-ratio: 1 / 1;
    display: none;
}
.player-float-bt img.active {
    display: block;
}
@keyframes text-scroll {
    0% {
        margin-left: 110%;
    }
    100% {
        margin-left: -110%;
    }
}
.player-float-progress-bar {
    width: 100%;
    height: calc(0.25 * var(--root));
}
.player-float-progress-fill {
    width: 0%;
    height: 100%;
    background-color: #BF8D4E;
}
.edu-platform-settings{
    width: calc(2 * var(--root));
    aspect-ratio: 1 / 1;
    padding: calc(0.5 * var(--base));
    /* background-color: #FDF3E4; */
    border-radius: calc(0.25 * var(--base));
    cursor: pointer;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: calc(1.25 * var(--base));
    right: calc(1.25 * var(--base));
}
.edu-platform-settings svg{
    width: calc(2 * var(--root));
    aspect-ratio: 1 / 1;
}
/* video-player */
.player-video {
    width: 100%;
    /* margin-bottom: 1rem; */
    /* margin-top: calc(2 * var(--base));
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: none;
    scroll-behavior: smooth;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: calc(2 * var(--base)); */
}
.player-video iframe {
    width: 100%;
    aspect-ratio: 16 / 9;
    border-radius: 0.5rem;
}
/* .player-video-container {
    width: 100%;
    border-radius: calc(0.5 * var(--base));
    overflow: hidden;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    position: relative;
}
.player-video-player {
    width: 100%;
}
.player-video-container.fullscreen .player-video-player{
    width: calc((100dvh - 70px - 2rem) * 0.75);
}
.player-video-controlbar {
    width: calc(100% - var(--base));
    height: calc(2 * var(--root));
    padding: calc(100% - 2 * var(--root) - 0.5 * var(--base)) calc(0.5 * var(--base)) calc(0.5 * var(--base)) calc(0.5 * var(--base));
    background: linear-gradient(to top, color-mix(in srgb, #FDF7ED 75%, transparent), color-mix(in srgb, #FDF7ED 75%, transparent) calc(2 * var(--root) + var(--base)), transparent calc(2 * var(--root) + var(--base)));
    overflow: hidden;
    opacity: 0;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: calc(0.5 * var(--base));
    position: absolute;
    left: 0;
    bottom: 0;
    transition: all 0.7s ease;
}
.player-video-controlbar.active {
    opacity: 1;
}
.player-video-controlbar.active .player-video-play:hover, .player-video-controlbar.active .player-video-muted:hover, .player-video-controlbar.active .player-video-fullscreen:hover{
    cursor: pointer;
    background-color: #FBE9CE;
}
.player-video-container[data-controlbarstatus="active"] video::cue{
    bottom: calc(2 * var(--root) + 1.5 * var(--base));
}
.player-video-play, .player-video-muted, .player-video-fullscreen {
    width: var(--root);
    aspect-ratio: 1 / 1;
    padding: calc(0.5 * var(--base));
    border-radius: calc(0.5 * var(--root) + 0.5 * var(--base));
    transition: opacity, background-color 0.3s ease;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
.player-video-play img, .player-video-muted img, .player-video-fullscreen img{
    display: none;
    width: var(--root);
    aspect-ratio: 1 / 1;
}
.player-video-play img.active, .player-video-muted img.active, .player-video-fullscreen img.active{
    display: block;
}
.player-video-progress{
    flex: 3;
    height: calc(0.25 * var(--root));
    border-radius: calc(0.125 * var(--root));
    background-color: #FDF7ED;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
    cursor: pointer;
}
.player-video-progress-fill{
    width: 0%;
    height: 100%;
    border-radius: 0.125rem;
    background-color: #BF8D4E;
    transition: all 0.3s ease;
}
.player-video-volume{
    flex: 1;
    max-width: calc(6 * var(--base));
    min-width: calc(4 * var(--base));
    height: calc(0.25 * var(--root));
    border-radius: calc(0.125 * var(--root));
    background-color: #FDF7ED;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
    cursor: pointer;
}
.player-video-volume-fill{
    width: 100%;
    height: 100%;
    border-radius: calc(0.125 * var(--root));
    background-color: #BF8D4E;
    transition: all 0.3s ease;
}
.player-video-container.fullscreen{
    border-radius: 0;
    position: absolute;
    left: 0;
    top: 0;
    width: calc((100dvh - 70px - 2rem) * 0.75);
    height: calc(100dvh - 70px - 2rem);
    background-color: #000000;
    z-index: 30;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.player-video-main {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: calc(0.5 * var(--root));
}
.player-video-img {
    margin-top: calc(0.5 * var(--root));
    margin-bottom: calc(0.5 * var(--root));
    max-width: calc(44 * var(--root));
    width: calc(44 * var(--root));
    object-fit: contain;
    border-radius: var(--root);
} */
.player-header{
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}
.player-textbook{
    display: flex;
    flex-direction: row;
    gap: 0.5rem;
    flex-wrap: nowrap;
}
.player-textbook span{
    font-size: 0.8rem !important;
}
.player-info {
    /* width: 100%; */
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0.25rem;
}
.player-video-title {
    width: 100%;
}
.player-video-title span {
    width: 100%;
    font-size: calc(1.5 * var(--base));
    font-weight: bold;
    text-align: justify;
}
.player-video-chapter {
    width: 100%;
}
.player-video-chapter span {
    width: 100%;
    font-size: var(--base);
    color: var(--gray7);
}
.player-description {
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: var(--base);
}
.player-description * {
    font-size: var(--base);
    line-height: 175%;
    text-align: justify;
    color: var(--gray7);
}
/* .player-text-title span::after, .player-audio-title span::after, .player-video-title span::after {
    content: '';
    width: calc(100% + 1rem);
    height: 1rem;
    background-color: #BF8D4E;
    z-index: -1;
    position: absolute;
    left: -0.5rem;
    bottom: -0.0625rem;
} */
.player-text-expand span, .player-audio-expand span, .player-video-expand span {
    font-size: 0.8rem;
    color: #909090;
}
.player-text-subtitle, .player-text-para, .player-audio-subtitle, .player-audio-para, .player-video-subtitle, .player-video-para {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
}
.player-text-subtitle span, .player-audio-subtitle span, .player-video-subtitle span {
    width: 100%;
    line-height: 200%;
    font-size: 1.25rem;
    font-weight: bold;
    text-align: left;
}
.player-text-para span, .player-audio-para span, .player-video-para span {
    width: 100%;
    line-height: 150%;
    text-align: left;
}