/* SHARED DASHBOARD AND FLASHCARDS START */

/* LAYOUT RESPONSIVE FLUID V1 — dashboard único, fluido e sem flicker */
.shared-responsive-ancestor {
  box-sizing: border-box !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow-x: hidden !important;
}

#student-view.shared-responsive-view {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-inline: auto !important;
  overflow-x: visible !important;
}

#admin-view.shared-responsive-view {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: clamp(20px, 2vw, 38px) !important;
  overflow-x: hidden !important;
}

#student-view.shared-responsive-view #shared-dashboard-stats,
#admin-view.shared-responsive-view #admin-stats,
#student-view.shared-responsive-view #student-courses {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}

#student-view.shared-responsive-view
.student-dashboard-split[data-shared-layout] {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  grid-auto-flow: row !important;
  margin-top: 28px !important;
  transform: none !important;
  transition: none !important;
  animation: none !important;
  isolation: isolate !important;
}

#student-view.shared-responsive-view
.student-dashboard-split[data-shared-layout="wide"] {
  grid-template-columns:
    minmax(360px, 1.25fr)
    repeat(2, minmax(280px, 1fr)) !important;
  column-gap: clamp(18px, 1.5vw, 32px) !important;
  row-gap: 30px !important;
  justify-content: stretch !important;
}

#student-view.shared-responsive-view
.student-dashboard-split[data-shared-layout="medium"] {
  grid-template-columns:
    repeat(2, minmax(280px, 1fr)) !important;
  column-gap: clamp(18px, 2vw, 30px) !important;
  row-gap: 28px !important;
  justify-content: stretch !important;
}

#student-view.shared-responsive-view
.student-dashboard-split[data-shared-layout="narrow"] {
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 22px !important;
  justify-content: stretch !important;
}

#student-view.shared-responsive-view
.student-dashboard-split[data-shared-layout]
> .student-modern-course-grid,
#student-view.shared-responsive-view #student-flashcard-widget,
#student-view.shared-responsive-view #student-instructor-flashcard-widget {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  align-self: stretch !important;
  justify-self: stretch !important;
  transition: none !important;
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  z-index: 1 !important;
}

#student-view.shared-responsive-view
.student-dashboard-split[data-shared-layout]
> .student-modern-course-grid > * {
  width: 100% !important;
  max-width: none !important;
  max-height: none !important;
}

#student-view.shared-responsive-view #student-flashcard-widget,
#student-view.shared-responsive-view #student-instructor-flashcard-widget {
  height: var(--shared-panel-height, auto) !important;
  min-height: var(--shared-panel-height, 560px) !important;
}

#student-view.shared-responsive-view
#student-instructor-flashcard-widget.shared-student-flash-widget {
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}

#student-view.shared-responsive-view
#student-instructor-flashcard-widget
.shared-student-flash-stage {
  flex: 1 1 auto !important;
  min-height: 0 !important;
}

/* Flashcards Instrutor follows the student's dashboard language */
.shared-student-flash-widget {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  width: 100%;
  min-height: 0;
  padding: 16px;
  overflow: hidden;
  color: #17243c;
  background: #ffffff;
  border: 1px solid #dbe3f0;
  border-radius: 18px;
  box-shadow: 0 16px 38px rgba(20, 39, 75, 0.08);
}

.shared-student-flash-header,
.shared-student-flash-heading,
.shared-student-flash-status,
.shared-student-flash-card > header,
.shared-student-flash-card > footer,
.shared-student-flash-note {
  display: flex;
  align-items: center;
}

.shared-student-flash-header {
  justify-content: space-between;
  gap: 14px;
}

.shared-student-flash-heading {
  min-width: 0;
  gap: 11px;
}

.shared-student-flash-icon {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
  color: #315cff;
  font-size: 17px;
  font-weight: 900;
  background: #edf2ff;
  border-radius: 10px;
}

.shared-student-flash-heading h2,
.shared-student-flash-heading small {
  display: block;
  margin: 0;
}

.shared-student-flash-heading h2 {
  overflow: hidden;
  color: #16243c;
  font-size: 19px;
  line-height: 1.15;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shared-student-flash-heading small {
  margin-top: 4px;
  color: #8290a5;
  font-size: 10px;
}

.shared-student-flash-open {
  min-height: 36px;
  padding: 0 13px;
  flex: 0 0 auto;
  color: #1f3150;
  font-size: 11px;
  font-weight: 850;
  background: #ffffff;
  border: 1px solid #ced8e8;
  border-radius: 10px;
  cursor: pointer;
}

.shared-student-flash-status {
  justify-content: space-between;
  gap: 10px;
  margin-top: 14px;
  color: #64748b;
  font-size: 8px;
  font-weight: 800;
  white-space: nowrap;
}

.shared-student-flash-status span {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

.shared-student-flash-status i {
  width: 8px;
  height: 8px;
  background: #315cff;
  border: 3px solid #dfe7ff;
  border-radius: 50%;
  box-sizing: content-box;
}

.shared-student-flash-stage {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
  margin-top: 14px;
  padding: 0 30px 28px 0;
}

.shared-student-flash-layer,
.shared-student-flash-card {
  position: absolute;
  border: 1px solid #dce4f3;
  border-radius: 18px;
}

.shared-student-flash-layer {
  background: linear-gradient(155deg, #ffffff, #eef3ff);
  box-shadow: 0 14px 28px rgba(31, 58, 119, 0.07);
}

.shared-student-flash-layer--one {
  inset: 8px 22px 20px 8px;
  z-index: 3;
  transform: rotate(0.6deg);
  transform-origin: 50% 100%;
}

.shared-student-flash-layer--two {
  inset: 15px 14px 12px 15px;
  z-index: 2;
  opacity: 0.76;
  transform: rotate(1.15deg);
  transform-origin: 50% 100%;
}

.shared-student-flash-layer--three {
  inset: 22px 6px 4px 22px;
  z-index: 1;
  opacity: 0.52;
  transform: rotate(1.7deg);
  transform-origin: 50% 100%;
}

.shared-student-flash-card {
  inset: 0 30px 28px 0;
  z-index: 4;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-width: 0;
  padding: 18px;
  background: linear-gradient(155deg, #ffffff 0%, #f7f9ff 100%);
  box-shadow: 0 18px 34px rgba(31, 58, 119, 0.12);
}

.shared-student-flash-card > header,
.shared-student-flash-card > footer {
  justify-content: space-between;
  gap: 10px;
}

.shared-student-flash-card > header span {
  max-width: 70%;
  padding: 6px 10px;
  overflow: hidden;
  color: #315cff;
  font-size: 9px;
  font-weight: 850;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: #edf2ff;
  border-radius: 999px;
}

.shared-student-flash-card > header strong {
  color: #748197;
  font-size: 10px;
}

.shared-student-flash-question {
  margin: 26px 0 auto;
}

.shared-student-flash-question small {
  display: block;
  color: #7d899c;
  font-size: 8px;
  font-weight: 900;
  letter-spacing: 0.04em;
}

.shared-student-flash-question h3 {
  margin: 18px 0 0;
  color: #1d2e4b;
  font-size: 18px;
  line-height: 1.48;
  overflow-wrap: anywhere;
}

.shared-student-flash-dots {
  display: flex;
  align-items: center;
  gap: 5px;
}

.shared-student-flash-dots i {
  width: 5px;
  height: 5px;
  background: #d7deeb;
  border-radius: 999px;
}

.shared-student-flash-dots i.is-active {
  width: 16px;
  background: #315cff;
}

.shared-student-flash-card > footer button {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  padding: 0;
  color: #315cff;
  font-size: 22px;
  line-height: 1;
  background: #edf2ff;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
}

.shared-student-flash-card > footer button:disabled {
  color: #aab4c6;
  cursor: default;
  opacity: 0.7;
}

.shared-student-flash-note {
  min-height: 34px;
  gap: 8px;
  margin-top: 3px;
  padding: 0 10px;
  color: #76849a;
  font-size: 9px;
  background: linear-gradient(90deg, #f6f8fc, #ffffff);
  border-radius: 9px;
}

.shared-student-flash-note span {
  color: #315cff;
  font-weight: 900;
}

#admin-view.shared-responsive-view,
#admin-view.shared-responsive-view > *,
#admin-view.shared-responsive-view
#instructor-shared-dashboard,
#admin-view.shared-responsive-view
.instructor-shared-grid,
#admin-view.shared-responsive-view
.shared-courses-section,
#admin-view.shared-responsive-view
.shared-courses-grid {
  box-sizing: border-box !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

#admin-view.shared-responsive-view
#instructor-shared-dashboard {
  overflow: hidden !important;
}

#admin-view.shared-responsive-view
.shared-instructor-dashboard-widget {
  width: 100% !important;
  max-width: 390px !important;
  min-width: 0 !important;
}

.instructor-shared-dashboard {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0 0 34px;
}

.instructor-shared-grid {
  display: grid;
  align-items: start;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.instructor-shared-grid[
  data-instructor-layout="wide"
] {
  grid-template-columns:
    minmax(0, 1fr)
    minmax(340px, 390px);
  gap: clamp(22px, 1.8vw, 28px);
}

.instructor-shared-grid[
  data-instructor-layout="stacked"
] {
  grid-template-columns:
    minmax(0, 1fr);
  gap: 28px;
}

/* INSTRUCTOR_DASHBOARD_VIDEOS_ONLY_V1_START */
.instructor-shared-grid[
  data-instructor-layout="courses-only"
] {
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
}

#admin-view.shared-responsive-view
#instructor-shared-dashboard
.shared-courses-section {
  width: 100% !important;
  max-width: none !important;
}
/* INSTRUCTOR_DASHBOARD_VIDEOS_ONLY_V1_END */

#admin-view.shared-responsive-view
#admin-stats,
#admin-view.shared-responsive-view
.shared-dashboard-stats {
  display: grid !important;
  grid-template-columns:
    repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(16px, 1.5vw, 22px) !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 0 28px !important;
}

#admin-view.shared-responsive-view
#admin-stats {
  display: grid !important;
  grid-template-columns:
    repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

#student-view.shared-responsive-view
.shared-summary-card,
#admin-view.shared-responsive-view
.shared-summary-card {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 82px !important;
  padding: 14px 16px !important;
}

.shared-summary-card {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  min-width: 0;
  min-height: 92px;
  gap: 16px;
  padding: 18px 20px;
  background: #ffffff;
  border: 1px solid #dfe6f0;
  border-radius: 18px;
  box-shadow:
    0 12px 30px
    rgba(15, 23, 42, 0.06);
}

.shared-summary-card i {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  color: #ffffff;
  font-style: normal;
  font-size: 20px;
  font-weight: 800;
  background:
    linear-gradient(
      145deg,
      #315cff,
      #163ec8
    );
  border-radius: 14px;
}

.shared-summary-card strong,
.shared-summary-card span {
  display: block;
}

.shared-summary-card strong {
  color: #12213a;
  font-size: 26px;
  line-height: 1;
}

.shared-summary-card span {
  margin-top: 7px;
  color: #7b879b;
  font-size: 13px;
  font-weight: 700;
}

.shared-courses-section,
.shared-instructor-dashboard-widget {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  background: #ffffff;
  border: 1px solid #dfe6f0;
  border-radius: 22px;
  box-shadow:
    0 16px 38px
    rgba(15, 23, 42, 0.07);
}

.shared-courses-section {
  padding:
    clamp(20px, 2vw, 28px);
  overflow: hidden;
}

.shared-instructor-dashboard-widget {
  width: 100%;
  max-width: 390px;
  min-height: 590px;
  justify-self: end;
  overflow: hidden;
}

.instructor-shared-grid[
  data-instructor-layout="stacked"
]
.shared-instructor-dashboard-widget {
  width: min(100%, 390px);
  max-width: 390px;
  justify-self: center;
}

.shared-section-title {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 15px;
}

.shared-section-title span,
.shared-modal-heading > span,
.shared-author-section-heading span,
.shared-author-library > header span,
.shared-author-study > header span {
  display: block;
  margin-bottom: 5px;
  color: #315cff;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.shared-section-title h2,
.shared-modal-heading h2 {
  margin: 0;
  color: #14223b;
}

.shared-section-title strong {
  display: grid;
  place-items: center;
  min-width: 36px;
  height: 36px;
  padding: 0 10px;
  color: #315cff;
  background: #edf2ff;
  border-radius: 12px;
}

.shared-courses-grid {
  display: grid;
  grid-template-columns:
    repeat(
      auto-fit,
      minmax(
        min(100%, 360px),
        1fr
      )
    );
  gap: 20px;
  margin-top: 20px;
}

.shared-course-card {
  box-sizing: border-box;
  width: 100%;
  max-width: 660px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid #e2e8f1;
  border-radius: 17px;
}

.shared-course-card.is-watchable {
  cursor: pointer;
  transition: transform 180ms ease, border-color 180ms ease, box-shadow 180ms ease;
}

.shared-course-card.is-watchable:hover,
.shared-course-card.is-watchable:focus-visible {
  transform: translateY(-3px);
  border-color: rgba(85, 126, 255, 0.62);
  box-shadow: 0 18px 38px rgba(30, 70, 190, 0.18);
  outline: none;
}

.shared-course-media {
  position: relative;
  height: clamp(170px, 15vw, 235px);
  overflow: hidden;
  background: #17213b;
}

.shared-course-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.shared-course-placeholder {
  display: grid;
  place-items: center;
  height: 100%;
  color: #ffffff;
  font-size: 34px;
  background:
    linear-gradient(
      145deg,
      #253863,
      #121c35
    );
}

.shared-course-media b {
  position: absolute;
  top: 12px;
  right: 12px;
  padding: 5px 9px;
  color: #ffffff;
  font-size: 9px;
  background:
    rgba(42, 178, 105, 0.94);
  border-radius: 999px;
}

.shared-course-play {
  position: absolute;
  inset: 50% auto auto 50%;
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  color: #315cff;
  font-size: 21px;
  background: rgba(255, 255, 255, 0.94);
  border-radius: 50%;
  box-shadow: 0 14px 30px rgba(2, 12, 32, 0.28);
  transform: translate(-50%, -50%);
}

.shared-course-body {
  padding: 17px;
}

.shared-course-body h3,
.shared-course-body p {
  margin: 0;
}

.shared-course-body h3 {
  color: #192944;
  font-size: 15px;
  line-height: 1.35;
}

.shared-course-body p {
  display: -webkit-box;
  min-height: 39px;
  margin-top: 8px;
  overflow: hidden;
  color: #7b8799;
  font-size: 11px;
  line-height: 1.55;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.shared-course-body footer {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 13px;
}

.shared-course-body footer span {
  padding: 5px 7px;
  color: #66748b;
  font-size: 9px;
  font-weight: 750;
  background: #f2f5fa;
  border-radius: 7px;
}

.shared-course-watch-button {
  width: 100%;
  min-height: 42px;
  margin-top: 15px;
  color: #fff;
  font: inherit;
  font-size: 12px;
  font-weight: 850;
  background: linear-gradient(135deg, #3975ff, #5748f3);
  border: 0;
  border-radius: 10px;
  cursor: pointer;
}

.shared-course-watch-button:disabled {
  color: #8592a8;
  background: rgba(112, 132, 170, 0.12);
  cursor: default;
}

body.instructor-course-player-open { overflow: hidden; }

.instructor-course-player-modal {
  position: fixed;
  inset: 0;
  z-index: 70000;
  display: grid;
  place-items: center;
  padding: 22px;
}

.instructor-course-player-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(1, 9, 23, 0.84);
  backdrop-filter: blur(9px);
}

.instructor-course-player-dialog {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  width: min(1500px, 96vw);
  max-height: 94vh;
  overflow: hidden;
  color: #eef4ff;
  background: #071426;
  border: 1px solid rgba(100, 139, 215, 0.36);
  border-radius: 22px;
  box-shadow: 0 30px 90px rgba(0, 0, 0, 0.58);
}

.instructor-course-player-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 20px 24px;
  background: #10213c;
  border-bottom: 1px solid rgba(113, 145, 207, 0.22);
}

.instructor-course-player-header span {
  color: #74a0ff;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .09em;
}

.instructor-course-player-header h2,
.instructor-course-player-header p { margin: 0; }
.instructor-course-player-header h2 { margin-top: 5px; font-size: clamp(20px, 2vw, 28px); }
.instructor-course-player-header p { margin-top: 5px; color: #9facc1; font-size: 12px; }
.instructor-course-player-header > button {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
  color: #c6d2e7;
  font-size: 24px;
  background: #142944;
  border: 1px solid #315174;
  border-radius: 11px;
  cursor: pointer;
}

.instructor-course-classroom {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(290px, 370px);
  min-height: 0;
  overflow: hidden;
}

.instructor-course-video-area { min-width: 0; padding: 24px; overflow: auto; }
.instructor-course-video-frame {
  display: grid;
  place-items: center;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #000;
  border: 1px solid rgba(110, 143, 204, 0.24);
  border-radius: 16px;
  box-shadow: 0 20px 48px rgba(0, 0, 0, .34);
}
.instructor-course-video-stage {
  position: relative;
  width: 100%;
  height: 100%;
  min-width: 0;
  min-height: 0;
  background: #000;
}
.instructor-course-video-frame video {
  display: block;
  width: 100%;
  height: 100%;
  background: #000;
  object-fit: contain;
}
.instructor-course-video-loader {
  position: absolute;
  inset: 0;
  display: none;
  place-items: center;
  pointer-events: none;
  background: rgba(0, 0, 0, .16);
}
.instructor-course-video-stage.is-loading .instructor-course-video-loader { display: grid; }
.instructor-course-video-loader span {
  width: 34px;
  height: 34px;
  border: 3px solid rgba(255,255,255,.24);
  border-top-color: #6f91ff;
  border-radius: 50%;
  animation: instructorCoursePlayerSpin .8s linear infinite;
}
@keyframes instructorCoursePlayerSpin { to { transform: rotate(360deg); } }
.instructor-course-now-playing { padding: 17px 4px 0; }
.instructor-course-now-playing span { color: #72a0ff; font-size: 11px; font-weight: 850; }
.instructor-course-now-playing h3 { margin: 5px 0; font-size: 20px; }
.instructor-course-now-playing small { color: #8291a8; }

/* INSTRUCTOR_COURSE_PLAYER_V2_START */
.instructor-course-playback-status {
  display: grid;
  gap: 10px;
  margin-top: 14px;
  padding: 13px 15px;
  background: rgba(13, 31, 55, .84);
  border: 1px solid rgba(112, 145, 207, .22);
  border-radius: 13px;
}
.instructor-course-progress-track {
  position: relative;
  height: 5px;
  overflow: hidden;
  background: rgba(104, 132, 181, .24);
  border-radius: 999px;
}
.instructor-course-progress-track > span {
  display: block;
  width: 0;
  height: 100%;
  background: linear-gradient(90deg, #3975ff, #684af6);
  border-radius: inherit;
  transition: width 120ms linear;
}
.instructor-course-progress-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
.instructor-course-progress-meta > div:first-child {
  display: flex;
  align-items: baseline;
  gap: 10px;
  min-width: 0;
}
.instructor-course-progress-meta strong {
  color: #eef4ff;
  font-size: 15px;
  font-variant-numeric: tabular-nums;
}
.instructor-course-progress-meta span {
  color: #8fa2bf;
  font-size: 11px;
  font-variant-numeric: tabular-nums;
}
.instructor-course-playback-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}
.instructor-course-playback-actions button {
  min-height: 34px;
  padding: 7px 12px;
  color: #dbe7fb;
  font-size: 11px;
  font-weight: 800;
  background: #142b4a;
  border: 1px solid rgba(99, 140, 216, .38);
  border-radius: 9px;
  cursor: pointer;
}
.instructor-course-playback-actions button:hover {
  color: #fff;
  background: #1b3a63;
  border-color: rgba(112, 155, 240, .68);
}
.instructor-course-author-card {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  align-items: center;
  gap: 11px;
  margin-bottom: 18px;
  padding: 12px;
  background: rgba(17, 39, 68, .82);
  border: 1px solid rgba(105, 143, 215, .22);
  border-radius: 12px;
}
.instructor-course-author-avatar {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  color: #fff;
  font-size: 12px;
  font-weight: 900;
  background: linear-gradient(145deg, #3975ff, #604af4);
  border-radius: 12px;
  box-shadow: 0 8px 22px rgba(50, 91, 210, .24);
}
.instructor-course-author-card > div:last-child {
  display: grid;
  gap: 2px;
  min-width: 0;
}
.instructor-course-author-card span {
  color: #739ffb;
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .08em;
}
.instructor-course-author-card strong {
  overflow: hidden;
  color: #edf4ff;
  font-size: 12px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.instructor-course-author-card small {
  color: #8496b1;
  font-size: 9px;
}
.instructor-course-lesson.is-playing > span {
  color: #fff;
  background: linear-gradient(145deg, #3975ff, #5e4af4);
}
.instructor-course-video-frame video:fullscreen,
.instructor-course-video-frame video:-webkit-full-screen {
  width: 100vw !important;
  height: 100vh !important;
  max-width: none !important;
  max-height: none !important;
  background: #000;
  object-fit: contain;
}
@media (max-width: 620px) {
  .instructor-course-progress-meta {
    align-items: stretch;
    flex-direction: column;
  }
  .instructor-course-playback-actions {
    justify-content: stretch;
  }
  .instructor-course-playback-actions button {
    flex: 1 1 auto;
  }
}
/* INSTRUCTOR_COURSE_PLAYER_V2_END */


.instructor-course-playlist {
  min-height: 0;
  padding: 20px;
  overflow: auto;
  background: #0b1a30;
  border-left: 1px solid rgba(112, 144, 204, 0.19);
}
.instructor-course-playlist > header { display: flex; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.instructor-course-playlist > header span { color: #8293ad; font-size: 11px; }
.instructor-course-module + .instructor-course-module { margin-top: 20px; }
.instructor-course-module > header { display: flex; flex-direction: column; gap: 4px; margin-bottom: 9px; }
.instructor-course-module > header span { color: #7099f6; font-size: 9px; font-weight: 900; text-transform: uppercase; }
.instructor-course-module > header strong { font-size: 13px; }
.instructor-course-lesson {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  width: 100%;
  gap: 9px;
  padding: 11px;
  color: #c9d5e8;
  text-align: left;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 10px;
  cursor: pointer;
}
.instructor-course-lesson:hover,
.instructor-course-lesson.is-active { color: #fff; background: #132b4e; border-color: #315b94; }
.instructor-course-lesson > span { display: grid; place-items: center; width: 26px; height: 26px; background: #1b3559; border-radius: 8px; font-size: 10px; }
.instructor-course-lesson > strong { overflow: hidden; font-size: 11px; line-height: 1.35; text-overflow: ellipsis; }
.instructor-course-lesson > small { color: #7f90aa; font-size: 9px; }
.instructor-course-lesson:disabled { opacity: .45; cursor: default; }

@media (max-width: 880px) {
  .instructor-course-player-modal { padding: 8px; }
  .instructor-course-player-dialog { width: 100%; max-height: 98vh; }
  .instructor-course-classroom { grid-template-columns: 1fr; overflow: auto; }
  .instructor-course-video-area { padding: 14px; }
  .instructor-course-playlist { overflow: visible; border-top: 1px solid rgba(112, 144, 204, .19); border-left: 0; }
}

.shared-empty{padding:28px;color:#748096;text-align:center;background:#f7f9fc;border:1px dashed #d1d9e7;border-radius:14px;}

.shared-flash-modal[hidden] {
  display: none !important;
}

.shared-flash-modal {
  position: fixed;
  inset: 0;
  z-index: 60000;
  display: grid;
  place-items: center;
  padding: 18px;
}

.shared-modal-backdrop {
  position: absolute;
  inset: 0;
  background:
    rgba(10, 18, 34, 0.72);
  backdrop-filter: blur(7px);
}

.shared-modal-panel {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  width:
    min(
      1420px,
      calc(100vw - 30px)
    );
  max-width:
    calc(100vw - 30px);
  max-height:
    calc(100dvh - 30px);
  padding:
    clamp(20px, 2.1vw, 32px);
  overflow: auto;
  background: #ffffff;
  border-radius: 24px;
  box-shadow:
    0 30px 90px
    rgba(0, 0, 0, 0.3);
}

.shared-modal-close {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 3;
  width: 40px;
  height: 40px;
  color: #37445a;
  font-size: 25px;
  background: #eef2f8;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
}

html.shared-modal-open {
  overflow: hidden;
}

.shared-modal-heading {
  padding-right: 54px;
  margin-bottom: 22px;
}

.shared-modal-heading p {
  max-width: 820px;
  margin: 8px 0 0;
  color: #748096;
  font-size: 12px;
  line-height: 1.55;
}

.shared-author-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  padding-bottom: 17px;
  margin-bottom: 20px;
  border-bottom: 1px solid #e3e8f1;
}

.shared-author-tabs button {
  min-height: 40px;
  padding: 0 15px;
  color: #5b687d;
  font-size: 11px;
  font-weight: 850;
  background: transparent;
  border: 1px solid transparent;
  border-radius: 10px;
  cursor: pointer;
}

.shared-author-tabs button.is-active {
  color: #315cff;
  background: #edf2ff;
  border-color: #d1dcff;
}

.shared-author-tab-content {
  min-width: 0;
}

.shared-author-form {
  display: grid;
  grid-template-columns:
    minmax(0, 1fr)
    minmax(280px, 360px);
  align-items: stretch;
  gap:
    clamp(22px, 2.2vw, 32px);
  min-width: 0;
}

.shared-author-editor,
.shared-author-preview,
.shared-author-library,
.shared-author-study {
  box-sizing: border-box;
  min-width: 0;
  background: #f8faff;
  border: 1px solid #dce5f1;
  border-radius: 18px;
}

.shared-author-editor {
  padding:
    clamp(18px, 2vw, 26px);
}

.shared-author-preview {
  position: relative;
  min-height: 580px;
  padding: 22px;
  overflow: hidden;
}

.shared-author-section-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
  margin-bottom: 22px;
}

.shared-author-section-heading h3,
.shared-author-library h3,
.shared-author-study h3 {
  margin: 0;
  color: #20304c;
}

.shared-author-section-heading p {
  max-width: 290px;
  margin: 0;
  color: #748096;
  font-size: 11px;
  line-height: 1.5;
  text-align: right;
}

.shared-author-editor label {
  display: grid;
  gap: 7px;
  margin-bottom: 15px;
  color: #55637a;
  font-size: 11px;
  font-weight: 800;
}

.shared-author-two-columns {
  display: grid;
  grid-template-columns:
    repeat(2, minmax(0, 1fr));
  gap: 15px;
}

.shared-author-editor input,
.shared-author-editor textarea {
  box-sizing: border-box;
  width: 100%;
  padding: 12px 13px;
  color: #263650;
  font: inherit;
  background: #ffffff;
  border: 1px solid #cfd8e8;
  border-radius: 10px;
  outline: none;
}

.shared-author-editor textarea {
  min-height: 110px;
  resize: vertical;
}

.shared-author-editor input:focus,
.shared-author-editor textarea:focus {
  border-color: #86a0ff;
  box-shadow:
    0 0 0 3px
    rgba(49, 92, 255, 0.09);
}

.shared-author-resources {
  padding: 18px;
  margin-top: 4px;
  background: #f2f6fc;
  border: 1px solid #dbe4f0;
  border-radius: 14px;
}

.shared-author-resources h4,
.shared-author-resources p {
  margin: 0;
}

.shared-author-resources h4 {
  color: #263650;
  font-size: 13px;
}

.shared-author-resources p {
  margin-top: 5px;
  color: #7c899d;
  font-size: 10px;
}

.shared-author-resource-buttons {
  display: grid;
  grid-template-columns:
    repeat(4, minmax(0, 1fr));
  gap: 9px;
  margin-top: 12px;
}

.shared-author-resource-buttons button {
  min-height: 42px;
  padding: 8px;
  color: #315cff;
  font-size: 10px;
  font-weight: 800;
  background: #ffffff;
  border: 1px solid #ced9ea;
  border-radius: 10px;
  cursor: pointer;
}

.shared-author-attachment-line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 12px;
  color: #7c899d;
  font-size: 9px;
}

.shared-author-attachment-line button {
  padding: 6px 9px;
  color: #c83838;
  font-size: 9px;
  background: #fff0f0;
  border: 1px solid #f1d3d3;
  border-radius: 8px;
  cursor: pointer;
}

.shared-share-on-save {
  display: flex !important;
  grid-template-columns: none !important;
  align-items: center;
  gap: 9px !important;
  padding: 11px 13px;
  margin-top: 15px;
  background: #ffffff;
  border: 1px solid #dce4f2;
  border-radius: 10px;
}

.shared-share-on-save input {
  width: 16px !important;
  height: 16px;
  flex: 0 0 16px;
  padding: 0 !important;
}

.shared-author-actions {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.shared-author-actions button,
.shared-author-study-actions button {
  min-height: 40px;
  padding: 0 15px;
  color: #315cff;
  font-size: 10px;
  font-weight: 850;
  background: #edf2ff;
  border: 1px solid #d4def7;
  border-radius: 10px;
  cursor: pointer;
}

.shared-author-actions button.primary {
  color: #ffffff;
  background: #315cff;
  border-color: #315cff;
}

.shared-author-preview-label {
  color: #315cff;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.shared-author-preview-card {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  min-height: 310px;
  margin-top: 18px;
  padding: 21px;
  background: #ffffff;
  border: 1px solid #d6deeb;
  border-radius: 17px;
  box-shadow:
    0 12px 26px
    rgba(28, 47, 88, 0.08);
}

.shared-author-preview-card span {
  color: #315cff;
  font-size: 10px;
  font-weight: 850;
}

.shared-author-preview-card img {
  width: 100%;
  max-height: 130px;
  margin-top: 14px;
  object-fit: cover;
  border-radius: 11px;
}

.shared-author-preview-card h3 {
  margin: 38px 0 0;
  color: #20304c;
  font-size: 20px;
  line-height: 1.35;
}

.shared-author-preview-card small {
  margin-top: auto;
  color: #7c899d;
  font-size: 10px;
  line-height: 1.5;
}

.shared-author-preview-stack {
  position: absolute;
  z-index: 1;
  top: 78px;
  right: 14px;
  bottom: 55px;
  left: 48px;
  border: 1px solid #dfe6f2;
  border-radius: 17px;
  transform:
    translate(9px, 12px)
    rotate(1deg);
  box-shadow:
    12px 14px 0 -2px #f6f8fc,
    12px 14px 0 -1px #dfe6f2,
    24px 27px 0 -3px #f8faff,
    24px 27px 0 -2px #dfe6f2;
}

.shared-author-library {
  margin-top: 24px;
  padding:
    clamp(18px, 1.7vw, 24px);
}

.shared-author-library > header,
.shared-author-study > header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
}

.shared-author-library > header strong {
  display: grid;
  place-items: center;
  min-width: 34px;
  height: 34px;
  padding: 0 9px;
  color: #315cff;
  background: #edf2ff;
  border-radius: 10px;
}

.shared-author-library-scroll {
  display: grid;
  gap: 12px;
  max-height: 420px;
  margin-top: 16px;
  overflow: auto;
  padding-right: 6px;
}

.shared-author-card-row {
  display: grid;
  grid-template-columns:
    minmax(0, 1fr)
    auto;
  gap: 18px;
  padding: 15px;
  background: #ffffff;
  border: 1px solid #e1e7f0;
  border-radius: 13px;
}

.shared-author-card-row span,
.shared-author-card-row small {
  color: #315cff;
  font-size: 9px;
  font-weight: 850;
}

.shared-author-card-row h3,
.shared-author-card-row p {
  margin: 5px 0 0;
}

.shared-author-card-row h3 {
  color: #25344f;
  font-size: 13px;
}

.shared-author-card-row p {
  display: -webkit-box;
  overflow: hidden;
  color: #78849a;
  font-size: 11px;
  line-height: 1.5;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.shared-author-card-row footer {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 7px;
}

.shared-author-card-row button,
.shared-study-nav button,
.shared-study-rating button {
  padding: 8px 10px;
  color: #315cff;
  font-size: 10px;
  font-weight: 800;
  background: #edf2ff;
  border: 1px solid #d9e3ff;
  border-radius: 9px;
  cursor: pointer;
}

.shared-author-card-row button.is-shared,
.shared-author-study-actions button.is-shared {
  color: #198754;
  background: #e9f8ef;
  border-color: #ccefdc;
}

.shared-author-card-row button.danger,
.shared-author-study-actions button.danger {
  color: #c83838;
  background: #fff0f0;
  border-color: #f3d3d3;
}

.shared-author-study {
  max-width: 900px;
  margin: 0 auto;
  padding:
    clamp(18px, 2vw, 26px);
}

.shared-author-study-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.shared-study {
  max-width: 840px;
  margin: 0 auto;
}

.shared-study-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  box-sizing: border-box;
  width: 100%;
  min-height: 390px;
  padding:
    clamp(25px, 3vw, 38px);
  text-align: left;
  background:
    linear-gradient(
      150deg,
      #ffffff,
      #eef3ff
    );
  border: 1px solid #d7e1f4;
  border-radius: 24px;
  box-shadow:
    0 20px 45px
    rgba(31, 58, 119, 0.13);
  cursor: pointer;
}

.shared-study-card.is-flipped {
  background:
    linear-gradient(
      150deg,
      #1f3f9d,
      #315cff
    );
}

.shared-study-card span,
.shared-study-card small {
  color: #315cff;
  font-size: 10px;
  font-weight: 850;
}

.shared-study-card h3 {
  margin: 28px 0;
  color: #1b2b48;
  font-size:
    clamp(21px, 2.2vw, 28px);
  line-height: 1.5;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}

.shared-study-card.is-flipped span,
.shared-study-card.is-flipped small,
.shared-study-card.is-flipped h3 {
  color: #ffffff;
}

.shared-study-resources {
  display: grid;
  gap: 13px;
  margin-top: 18px;
  padding: 16px;
  background: #f7f9fd;
  border: 1px solid #dce4f0;
  border-radius: 15px;
}

.shared-study-resources header strong,
.shared-study-resources header span {
  display: block;
}

.shared-study-resources header strong {
  color: #263650;
  font-size: 12px;
}

.shared-study-resources header span {
  margin-top: 4px;
  color: #7c899d;
  font-size: 10px;
}

.shared-study-resources figure {
  margin: 0;
}

.shared-study-resources img,
.shared-study-resources video {
  display: block;
  width: 100%;
  max-height: 380px;
  object-fit: contain;
  background: #10182b;
  border-radius: 12px;
}

.shared-study-resources audio {
  width: 100%;
}

.shared-study-resources a {
  display: block;
  padding: 11px 13px;
  color: #315cff;
  font-size: 11px;
  font-weight: 850;
  text-align: center;
  background: #ffffff;
  border: 1px solid #d6e0f1;
  border-radius: 10px;
}

.shared-study-nav,
.shared-study-rating {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 16px;
}

.shared-study-rating span {
  flex: 1 0 100%;
  color: #6d7a90;
  font-size: 11px;
  font-weight: 800;
  text-align: center;
}

@media (max-width: 1240px) {
  .shared-author-form {
    grid-template-columns:
      minmax(0, 1fr);
  }

  .shared-author-preview {
    min-height: 500px;
  }
}

@media (max-width: 900px) {
  #student-view.shared-responsive-view
  #shared-dashboard-stats,
  #admin-view.shared-responsive-view
  #admin-stats {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
  }

  #student-view.shared-responsive-view
  #shared-dashboard-stats
  .shared-summary-card {
    max-width: none !important;
  }

  #admin-view.shared-responsive-view {
    padding:
      20px 16px !important;
  }

  .shared-author-two-columns,
  .shared-author-resource-buttons {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));
  }

  .shared-author-section-heading,
  .shared-author-library > header,
  .shared-author-study > header {
    align-items: flex-start;
    flex-direction: column;
  }

  .shared-author-section-heading p {
    max-width: none;
    text-align: left;
  }

  .shared-author-study-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 650px) {
  #student-view.shared-responsive-view
  #shared-dashboard-stats,
  #admin-view.shared-responsive-view
  #admin-stats {
    grid-template-columns:
      minmax(0, 1fr) !important;
  }

  .shared-courses-grid,
  .shared-author-two-columns,
  .shared-author-resource-buttons {
    grid-template-columns:
      minmax(0, 1fr);
  }

  .shared-modal-panel {
    padding: 20px 14px;
  }

  .shared-author-card-row {
    grid-template-columns:
      minmax(0, 1fr);
  }

  .shared-author-card-row footer {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
  }

  .shared-author-actions {
    justify-content: stretch;
  }

  .shared-author-actions button {
    flex: 1 1 auto;
  }
}

/* LAYOUT RESPONSIVE FLUID V1 — autoridade do layout atual */
#student-view.shared-responsive-view #shared-dashboard-stats {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: clamp(14px, 1.35vw, 22px) !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin-inline: 0 !important;
  overflow: visible !important;
}

#student-view.shared-responsive-view
#shared-dashboard-stats .shared-summary-card {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 82px !important;
  margin: 0 !important;
  justify-self: stretch !important;
}

#student-view.shared-responsive-view
.student-dashboard-split[data-shared-layout="wide"] #student-flashcard-widget {
  grid-column: 2 !important;
}

#student-view.shared-responsive-view
.student-dashboard-split[data-shared-layout="wide"] #student-instructor-flashcard-widget {
  grid-column: 3 !important;
}

#student-view.shared-responsive-view
.student-dashboard-split[data-shared-layout="medium"] #student-flashcard-widget {
  grid-column: 1 !important;
  grid-row: 2 !important;
}

#student-view.shared-responsive-view
.student-dashboard-split[data-shared-layout="medium"] #student-instructor-flashcard-widget {
  grid-column: 2 !important;
  grid-row: 2 !important;
}

/* DASHBOARD PRINCIPAL DARK PREMIUM V1 START */

body.student-premium-layout-active
#student-view.shared-responsive-view
#shared-dashboard-stats {
  gap: clamp(14px, 1.35vw, 20px) !important;
  margin-bottom: 22px !important;
}

body.student-premium-layout-active
#student-view.shared-responsive-view
#shared-dashboard-stats
.shared-summary-card {
  position: relative;
  isolation: isolate;
  min-height: 92px !important;
  justify-self: stretch !important;
  color: #f4f7fc;
  background:
    linear-gradient(
      155deg,
      rgba(20, 37, 66, 0.88),
      rgba(12, 25, 47, 0.9)
    );
  border: 1px solid rgba(127, 153, 205, 0.18);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.25),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(14px);
}

body.student-premium-layout-active
#student-view.shared-responsive-view
#shared-dashboard-stats
.shared-summary-card::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 22px;
  left: 25px;
  width: 42px;
  height: 42px;
  background: rgba(58, 105, 255, 0.34);
  border-radius: 50%;
  filter: blur(17px);
  opacity: 0.72;
}

body.student-premium-layout-active
#student-view.shared-responsive-view
#shared-dashboard-stats
.shared-summary-card:nth-child(2)::before {
  background: rgba(67, 117, 255, 0.4);
}

body.student-premium-layout-active
#student-view.shared-responsive-view
#shared-dashboard-stats
.shared-summary-card:nth-child(3)::before {
  background: rgba(73, 122, 255, 0.38);
}

body.student-premium-layout-active
#student-view.shared-responsive-view
#shared-dashboard-stats
.shared-summary-card:nth-child(4)::before {
  background: rgba(109, 73, 255, 0.34);
}

body.student-premium-layout-active
#student-view.shared-responsive-view
.shared-summary-card i {
  color: #ffffff;
  background:
    linear-gradient(
      145deg,
      #4a7aff,
      #3155e9
    );
  border: 1px solid rgba(151, 180, 255, 0.38);
  box-shadow:
    0 0 0 6px rgba(69, 111, 255, 0.07),
    0 10px 24px rgba(39, 78, 210, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

body.student-premium-layout-active
#student-view.shared-responsive-view
.shared-summary-card:nth-child(4) i {
  background:
    linear-gradient(
      145deg,
      #6b62ff,
      #4f42d7
    );
}

body.student-premium-layout-active
#student-view.shared-responsive-view
.shared-summary-card strong {
  color: #f7f9fd;
}

body.student-premium-layout-active
#student-view.shared-responsive-view
.shared-summary-card span {
  color: #aab8cd;
}

body.student-premium-layout-active
#student-view.shared-responsive-view
.student-dashboard-split[data-shared-layout] {
  margin-top: 22px !important;
}

body.student-premium-layout-active
#student-instructor-flashcard-widget.shared-student-flash-widget {
  color: #f4f7fc;
  background:
    linear-gradient(
      165deg,
      rgba(17, 31, 56, 0.96),
      rgba(10, 22, 42, 0.97)
    );
  border: 1px solid rgba(130, 158, 207, 0.18);
  box-shadow:
    0 24px 58px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-icon {
  color: #79a0ff;
  background: rgba(64, 102, 206, 0.2);
  border: 1px solid rgba(108, 143, 231, 0.18);
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-heading h2 {
  color: #f4f7fc;
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-heading small,
body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-status,
body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-note {
  color: #a9b6ca;
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-open {
  color: #edf3ff;
  background: rgba(20, 38, 68, 0.9);
  border-color: rgba(117, 145, 205, 0.28);
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-open:hover {
  border-color: rgba(91, 132, 255, 0.54);
  background: rgba(29, 51, 91, 0.96);
}

/*
 * O Flashcards Instrutor usa a mesma pilha inclinada,
 * profundidade e animação visual do Flashcards Aluno.
 */
body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-stage {
  min-height: 360px;
  margin-top: 17px;
  padding: 0;
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-layer,
body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-card {
  inset: auto;
  top: 0;
  left: 0;
  width: calc(100% - 58px);
  height: calc(100% - 28px);
  min-height: 340px;
  padding: 19px;
  background:
    linear-gradient(
      155deg,
      #142440,
      #0d1a30
    );
  border-color: rgba(118, 148, 207, 0.2);
  border-radius: 16px;
  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
  transform-origin: center center;
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-layer--one {
  z-index: 3;
  opacity: 0.92;
  transform:
    translateX(24px)
    translateY(8px)
    rotate(3deg);
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-layer--two {
  z-index: 2;
  opacity: 0.72;
  transform:
    translateX(43px)
    translateY(18px)
    rotate(6deg);
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-layer--three {
  z-index: 1;
  opacity: 0.48;
  transform:
    translateX(59px)
    translateY(28px)
    rotate(9deg);
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-card {
  z-index: 5;
  animation:
    student-premium-shared-card-enter
    430ms
    cubic-bezier(0.2, 0.8, 0.2, 1)
    both;
}

@keyframes student-premium-shared-card-enter {
  from {
    opacity: 0;
    transform:
      translateX(-16px)
      rotate(-1.5deg);
  }

  to {
    opacity: 1;
    transform: none;
  }
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-card > header span {
  color: #9db7ff;
  background: rgba(67, 104, 205, 0.18);
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-card > header strong,
body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-question small {
  color: #9baac0;
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-question h3 {
  color: #f2f6fc;
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-dots i {
  background: #41506a;
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-dots i.is-active {
  background: #4b78ff;
  box-shadow: 0 0 12px rgba(67, 113, 255, 0.5);
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-card > footer button {
  color: #7fa3ff;
  background: rgba(60, 91, 169, 0.17);
  border: 1px solid rgba(101, 136, 223, 0.2);
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-note {
  background: rgba(15, 29, 52, 0.78);
  border: 1px solid rgba(116, 142, 194, 0.09);
}

body.student-premium-layout-active
#student-instructor-flashcard-widget
.shared-student-flash-note span {
  color: #78a0ff;
}

@media (max-width: 720px) {
  body.student-premium-layout-active
  #student-view.shared-responsive-view
  #shared-dashboard-stats {
    grid-template-columns:
      repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 460px) {
  body.student-premium-layout-active
  #student-view.shared-responsive-view
  #shared-dashboard-stats {
    grid-template-columns:
      minmax(0, 1fr) !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.student-premium-layout-active
  #student-instructor-flashcard-widget
  .shared-student-flash-card {
    animation: none !important;
  }
}

/* DASHBOARD PRINCIPAL DARK PREMIUM V1 END */

/* GLOBAL PLATFORM DARK MODE V1 START */

/* Estatísticas do painel administrativo no mesmo padrão premium do aluno. */
body.admin-layout-active #admin-view.shared-responsive-view #admin-stats .shared-summary-card {
  position: relative;
  isolation: isolate;
  min-height: 92px !important;
  color: #f4f7fc;
  background: linear-gradient(155deg, rgba(20, 37, 66, 0.88), rgba(12, 25, 47, 0.9));
  border: 1px solid rgba(127, 153, 205, 0.18);
  box-shadow: 0 18px 42px rgba(0, 0, 0, 0.25), inset 0 1px 0 rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(14px);
}

body.admin-layout-active #admin-view.shared-responsive-view #admin-stats .shared-summary-card::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 22px;
  left: 25px;
  width: 42px;
  height: 42px;
  background: rgba(58, 105, 255, 0.36);
  border-radius: 50%;
  filter: blur(17px);
  opacity: 0.72;
}
body.admin-layout-active #admin-stats .shared-summary-card:nth-child(4)::before { background: rgba(109, 73, 255, 0.36); }
body.admin-layout-active #admin-stats .shared-summary-card i {
  color: #fff;
  background: linear-gradient(145deg, #4a7aff, #3155e9);
  border: 1px solid rgba(151, 180, 255, 0.38);
  box-shadow: 0 0 0 6px rgba(69, 111, 255, 0.07), 0 10px 24px rgba(39, 78, 210, 0.34), inset 0 1px 0 rgba(255, 255, 255, 0.18);
}
body.admin-layout-active #admin-stats .shared-summary-card:nth-child(4) i { background: linear-gradient(145deg, #6b62ff, #4f42d7); }
body.admin-layout-active #admin-stats .shared-summary-card strong { color: #f7f9fd; }
body.admin-layout-active #admin-stats .shared-summary-card span { color: #aab8cd; }

/* Elemento central: biblioteca e curso publicado. */
body.admin-layout-active .shared-courses-section,
body.admin-layout-active .shared-instructor-dashboard-widget {
  color: #f4f7fc;
  background: linear-gradient(165deg, rgba(17, 31, 56, 0.96), rgba(10, 22, 42, 0.97));
  border: 1px solid rgba(130, 158, 207, 0.18);
  box-shadow: 0 24px 58px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.035);
  backdrop-filter: blur(14px);
}

body.admin-layout-active .shared-courses-section {
  border-color: rgba(87, 128, 255, 0.42);
  box-shadow: 0 0 0 1px rgba(76, 113, 231, 0.08), 0 0 34px rgba(48, 91, 228, 0.12), 0 24px 58px rgba(0, 0, 0, 0.32);
}
body.admin-layout-active .shared-section-title h2 { color: #f7f9fd; }
body.admin-layout-active .shared-section-title strong {
  color: #82a4ff;
  background: rgba(67, 104, 205, 0.18);
  border: 1px solid rgba(98, 135, 230, 0.16);
}

body.admin-layout-active .shared-course-card {
  background: linear-gradient(165deg, #12223d, #0a162a);
  border-color: rgba(118, 148, 207, 0.2);
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.035);
}
body.admin-layout-active .shared-course-media { border-bottom: 1px solid rgba(112, 142, 202, 0.14); }
body.admin-layout-active .shared-course-body h3 { color: #f2f6fc; }
body.admin-layout-active .shared-course-body p { color: #a9b6ca; }
body.admin-layout-active .shared-course-body footer span {
  color: #b9c7dc;
  background: rgba(84, 111, 166, 0.18);
  border: 1px solid rgba(124, 149, 201, 0.14);
}
body.admin-layout-active .shared-empty {
  color: #a9b6ca;
  background: rgba(16, 29, 52, 0.82);
  border-color: rgba(120, 146, 199, 0.18);
}

/* Flashcards do instrutor: mesmo tratamento, pilha e profundidade do aluno. */
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-icon {
  color: #79a0ff;
  background: rgba(64, 102, 206, 0.2);
  border: 1px solid rgba(108, 143, 231, 0.18);
}
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-heading h2 { color: #f4f7fc; }
body.admin-layout-active .shared-instructor-dashboard-widget :is(.shared-student-flash-heading small, .shared-student-flash-status, .shared-student-flash-note) { color: #a9b6ca; }
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-open {
  color: #edf3ff;
  background: rgba(20, 38, 68, 0.9);
  border-color: rgba(117, 145, 205, 0.28);
}
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-open:hover {
  border-color: rgba(91, 132, 255, 0.54);
  background: rgba(29, 51, 91, 0.96);
}
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-layer,
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-card {
  background: linear-gradient(155deg, #142440, #0d1a30);
  border-color: rgba(118, 148, 207, 0.2);
  box-shadow: 0 18px 38px rgba(0, 0, 0, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.035);
}
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-card > header span {
  color: #9db7ff;
  background: rgba(67, 104, 205, 0.18);
}
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-card > header strong,
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-question small { color: #9baac0; }
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-question h3 { color: #f2f6fc; }
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-dots i { background: #41506a; }
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-dots i.is-active {
  background: #4b78ff;
  box-shadow: 0 0 12px rgba(67, 113, 255, 0.5);
}
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-card > footer button {
  color: #7fa3ff;
  background: rgba(60, 91, 169, 0.17);
  border: 1px solid rgba(101, 136, 223, 0.2);
}
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-note {
  background: rgba(15, 29, 52, 0.78);
  border: 1px solid rgba(116, 142, 194, 0.09);
}
body.admin-layout-active .shared-instructor-dashboard-widget .shared-student-flash-note span { color: #78a0ff; }

/* FLASHCARDS DARK MODE COMPLETE V1 START */

/*
 * Tema escuro completo dos fluxos de flashcards.
 * Regras globais porque o mesmo componente é usado no painel administrativo,
 * em Meus cursos e nas janelas de criação/estudo.
 */
.shared-flash-modal,
.shared-modal-panel,
.shared-author-form,
.shared-author-library,
.shared-author-study {
  --flash-surface-1: #12223d;
  --flash-surface-2: #0c192e;
  --flash-surface-3: #081426;
  --flash-border: rgba(130, 158, 207, 0.2);
  --flash-border-strong: rgba(102, 139, 230, 0.34);
  --flash-text: #f2f6fc;
  --flash-text-soft: #c0ccdd;
  --flash-muted: #93a2b9;
  --flash-primary: #6f96ff;
  --flash-primary-strong: #3f6dff;
  color: var(--flash-text);
  color-scheme: dark;
}

.shared-modal-backdrop {
  background: rgba(2, 8, 18, 0.82);
  backdrop-filter: blur(9px);
}

.shared-modal-panel {
  color: var(--flash-text);
  background:
    radial-gradient(circle at 86% 4%, rgba(67, 91, 190, 0.16), transparent 28%),
    linear-gradient(160deg, #12223d, #091629 72%);
  border: 1px solid var(--flash-border);
  box-shadow:
    0 36px 100px rgba(0, 0, 0, 0.56),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

.shared-modal-close {
  color: #d6dfed;
  background: rgba(65, 87, 132, 0.26);
  border: 1px solid rgba(132, 157, 207, 0.16);
}

.shared-modal-close:hover {
  color: #ffffff;
  background: rgba(80, 106, 160, 0.38);
}

.shared-modal-heading > span,
.shared-author-section-heading span,
.shared-author-library > header span,
.shared-author-study > header span,
.shared-author-preview-label {
  color: #79a0ff;
}

:is(
  .shared-modal-heading h2,
  .shared-author-section-heading h3,
  .shared-author-library h3,
  .shared-author-study h3
) {
  color: var(--flash-text);
}

:is(
  .shared-modal-heading p,
  .shared-author-section-heading p
) {
  color: var(--flash-muted);
}

.shared-author-tabs {
  border-bottom-color: rgba(130, 158, 207, 0.16);
}

.shared-author-tabs button {
  color: #aab8cc;
}

.shared-author-tabs button:hover {
  color: #eaf0f9;
  background: rgba(67, 104, 205, 0.1);
}

.shared-author-tabs button.is-active {
  color: #a8beff;
  background: rgba(67, 104, 205, 0.2);
  border-color: rgba(106, 143, 236, 0.26);
}

:is(
  .shared-author-editor,
  .shared-author-preview,
  .shared-author-library,
  .shared-author-study,
  .shared-author-resources
) {
  color: var(--flash-text-soft);
  background:
    linear-gradient(160deg, rgba(18, 34, 61, 0.94), rgba(10, 23, 43, 0.96));
  border-color: var(--flash-border);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.shared-author-editor label {
  color: #bac7da;
}

.shared-author-editor :is(input, textarea, select) {
  color: #edf3fb;
  background: rgba(6, 16, 31, 0.9);
  border-color: rgba(126, 151, 201, 0.27);
}

.shared-author-editor :is(input, textarea)::placeholder {
  color: #74839a;
  opacity: 1;
}

.shared-author-editor select option {
  color: #edf3fb;
  background: #0c192e;
}

.shared-author-editor :is(input, textarea, select):focus {
  border-color: rgba(100, 140, 255, 0.76);
  box-shadow: 0 0 0 3px rgba(63, 109, 255, 0.18);
}

.shared-author-resources h4 {
  color: #e8eef8;
}

.shared-author-resources p,
.shared-author-attachment-line {
  color: var(--flash-muted);
}

.shared-author-resource-buttons button,
.shared-author-actions button,
.shared-author-study-actions button,
.shared-study-nav button,
.shared-study-rating button {
  color: #a8beff;
  background: rgba(20, 38, 68, 0.9);
  border-color: rgba(117, 145, 205, 0.27);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

:is(
  .shared-author-resource-buttons button,
  .shared-author-actions button,
  .shared-author-study-actions button,
  .shared-study-nav button,
  .shared-study-rating button
):hover:not(:disabled) {
  color: #ffffff;
  background: rgba(30, 54, 96, 0.96);
  border-color: rgba(91, 132, 255, 0.56);
}

.shared-author-actions button.primary {
  color: #ffffff;
  background: linear-gradient(120deg, #3974ff, #3158f4 58%, #5b48e8);
  border-color: rgba(141, 175, 255, 0.42);
  box-shadow:
    0 12px 28px rgba(44, 82, 220, 0.32),
    0 0 20px rgba(57, 101, 255, 0.13),
    inset 0 1px 0 rgba(255, 255, 255, 0.16);
}

.shared-author-attachment-line button,
.shared-author-card-row button.danger,
.shared-author-study-actions button.danger {
  color: #ff9ea8;
  background: rgba(166, 48, 65, 0.18);
  border-color: rgba(236, 107, 123, 0.27);
}

.shared-share-on-save {
  color: #c5d1e2;
  background: rgba(9, 21, 40, 0.88);
  border-color: rgba(126, 151, 201, 0.22);
}

.shared-share-on-save input {
  accent-color: #4c78ff;
}

.shared-author-preview-card {
  color: var(--flash-text);
  background:
    linear-gradient(155deg, #152641, #0c192e);
  border-color: rgba(118, 148, 207, 0.24);
  box-shadow:
    0 18px 42px rgba(0, 0, 0, 0.34),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.shared-author-preview-card span {
  color: #83a5ff;
}

.shared-author-preview-card h3 {
  color: #f1f5fb;
}

.shared-author-preview-card small {
  color: #9eacc0;
}

.shared-author-preview-stack {
  border-color: rgba(112, 142, 202, 0.2);
  box-shadow:
    12px 14px 0 -2px #101e36,
    12px 14px 0 -1px rgba(112, 142, 202, 0.2),
    24px 27px 0 -3px #0c192e,
    24px 27px 0 -2px rgba(112, 142, 202, 0.16);
}

.shared-author-library > header strong {
  color: #91adff;
  background: rgba(67, 104, 205, 0.2);
  border: 1px solid rgba(98, 135, 230, 0.18);
}

.shared-author-library-scroll {
  scrollbar-color: rgba(86, 118, 191, 0.7) rgba(6, 15, 29, 0.35);
}

.shared-author-card-row {
  color: var(--flash-text-soft);
  background: linear-gradient(155deg, #142440, #0c192e);
  border-color: rgba(118, 148, 207, 0.2);
  box-shadow:
    0 14px 32px rgba(0, 0, 0, 0.24),
    inset 0 1px 0 rgba(255, 255, 255, 0.025);
}

.shared-author-card-row span,
.shared-author-card-row small {
  color: #83a5ff;
}

.shared-author-card-row h3 {
  color: #eef3fb;
}

.shared-author-card-row p {
  color: #a6b3c7;
}

.shared-author-card-row button {
  color: #a8beff;
  background: rgba(28, 49, 86, 0.88);
  border-color: rgba(117, 145, 205, 0.24);
}

.shared-author-card-row button.is-shared,
.shared-author-study-actions button.is-shared {
  color: #71e0ad;
  background: rgba(34, 139, 96, 0.2);
  border-color: rgba(78, 204, 148, 0.28);
}

.shared-study-card {
  color: var(--flash-text);
  background:
    radial-gradient(circle at 88% 8%, rgba(69, 101, 207, 0.14), transparent 33%),
    linear-gradient(150deg, #152641, #0c192e);
  border-color: rgba(118, 148, 207, 0.24);
  box-shadow:
    0 22px 50px rgba(0, 0, 0, 0.36),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.shared-study-card:not(.is-flipped) :is(span, small) {
  color: #83a5ff;
}

.shared-study-card:not(.is-flipped) h3 {
  color: #f1f5fb;
}

.shared-study-card.is-flipped {
  background: linear-gradient(145deg, #244ba9, #315cff 62%, #5b48e8);
  border-color: rgba(151, 180, 255, 0.38);
}

.shared-study-card.is-flipped :is(span, small, h3) {
  color: #ffffff;
}

.shared-study-resources {
  color: var(--flash-text-soft);
  background: rgba(13, 27, 50, 0.92);
  border-color: rgba(122, 149, 201, 0.2);
}

.shared-study-resources header strong {
  color: #e9eff8;
}

.shared-study-resources header span {
  color: var(--flash-muted);
}

.shared-study-resources a {
  color: #9eb7ff;
  background: rgba(21, 39, 70, 0.94);
  border-color: rgba(119, 147, 205, 0.24);
}

.shared-study-resources audio {
  color-scheme: dark;
}

.shared-study-rating span {
  color: #a6b3c7;
}

.shared-flash-modal ::-webkit-scrollbar,
.shared-author-library-scroll::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

.shared-flash-modal ::-webkit-scrollbar-track,
.shared-author-library-scroll::-webkit-scrollbar-track {
  background: rgba(5, 13, 26, 0.38);
}

.shared-flash-modal ::-webkit-scrollbar-thumb,
.shared-author-library-scroll::-webkit-scrollbar-thumb {
  background: rgba(85, 112, 173, 0.56);
  border: 3px solid transparent;
  border-radius: 999px;
  background-clip: padding-box;
}

/* FLASHCARDS DARK MODE COMPLETE V1 END */

/* GLOBAL PLATFORM DARK MODE V1 END */

/* SHARED DASHBOARD AND FLASHCARDS END */

/* FLASHCARDS ALL PAGE TURN V2 START */

/*
 * Única implementação visual para os três decks:
 * 1. Flashcards Aluno;
 * 2. Flashcards Instrutor compartilhado na página do aluno;
 * 3. Flashcards Instrutor no Painel administrativo.
 */
#student-flashcard-widget .student-flashcard-showcase-card,
#student-instructor-flashcard-widget .shared-student-flash-layer,
#student-instructor-flashcard-widget .shared-student-flash-card,
#instructor-flashcard-widget .shared-student-flash-layer,
#instructor-flashcard-widget .shared-student-flash-card {
  transition:
    transform 280ms cubic-bezier(0.2, 0.8, 0.2, 1),
    box-shadow 280ms ease,
    opacity 280ms ease;
  will-change: transform, opacity;
}

#student-instructor-flashcard-widget .shared-student-flash-card,
#instructor-flashcard-widget .shared-student-flash-card {
  transform: translateX(0) rotate(-1.2deg);
  transform-origin: 12% 50%;
  backface-visibility: hidden;
}

#student-instructor-flashcard-widget .shared-student-flash-stage:is(:hover, :focus-within)
.shared-student-flash-card,
#instructor-flashcard-widget .shared-student-flash-stage:is(:hover, :focus-within)
.shared-student-flash-card {
  transform: translateY(-6px) rotate(-1.2deg);
  box-shadow:
    0 26px 52px rgba(0, 0, 0, 0.38),
    0 0 28px rgba(63, 109, 255, 0.14),
    inset 0 1px 0 rgba(255, 255, 255, 0.045);
}

#student-instructor-flashcard-widget .shared-student-flash-stage:is(:hover, :focus-within)
.shared-student-flash-layer--one,
#instructor-flashcard-widget .shared-student-flash-stage:is(:hover, :focus-within)
.shared-student-flash-layer--one {
  transform: translateX(28px) translateY(10px) rotate(3.8deg);
}

#student-instructor-flashcard-widget .shared-student-flash-stage:is(:hover, :focus-within)
.shared-student-flash-layer--two,
#instructor-flashcard-widget .shared-student-flash-stage:is(:hover, :focus-within)
.shared-student-flash-layer--two {
  transform: translateX(49px) translateY(21px) rotate(7deg);
}

#student-instructor-flashcard-widget .shared-student-flash-stage:is(:hover, :focus-within)
.shared-student-flash-layer--three,
#instructor-flashcard-widget .shared-student-flash-stage:is(:hover, :focus-within)
.shared-student-flash-layer--three {
  transform: translateX(66px) translateY(32px) rotate(10deg);
}

@keyframes flashcard-page-turn-v2-out {
  0% { opacity: 1; transform: translateX(0) translateY(0) rotate(-1.2deg) scale(1); }
  45% { opacity: .88; transform: translateX(-22px) translateY(-7px) rotate(-5deg) scale(.992); }
  100% { opacity: 0; transform: translateX(-105px) translateY(-14px) rotate(-13deg) scale(.965); }
}

@keyframes flashcard-page-turn-v2-in {
  0% { opacity: 0; transform: translateX(72px) translateY(18px) rotate(8deg) scale(.972); }
  65% { opacity: 1; transform: translateX(-5px) translateY(-3px) rotate(-2deg) scale(1.004); }
  100% { opacity: 1; transform: translateX(0) translateY(0) rotate(-1.2deg) scale(1); }
}

#student-instructor-flashcard-widget .shared-student-flash-card.is-page-turning-out,
#instructor-flashcard-widget .shared-student-flash-card.is-page-turning-out {
  animation: flashcard-page-turn-v2-out 300ms ease-in forwards !important;
  pointer-events: none;
}

#student-instructor-flashcard-widget .shared-student-flash-card.is-page-turning-in,
#instructor-flashcard-widget .shared-student-flash-card.is-page-turning-in {
  animation: flashcard-page-turn-v2-in 430ms cubic-bezier(0.2, 0.8, 0.2, 1) both !important;
}

#student-instructor-flashcard-widget.is-page-turning-out .shared-student-flash-layer--one,
#instructor-flashcard-widget.is-page-turning-out .shared-student-flash-layer--one {
  transform: translateX(8px) translateY(5px) rotate(1.6deg);
}

#student-instructor-flashcard-widget.is-page-turning-out .shared-student-flash-layer--two,
#instructor-flashcard-widget.is-page-turning-out .shared-student-flash-layer--two {
  transform: translateX(25px) translateY(13px) rotate(4deg);
}

#student-instructor-flashcard-widget.is-page-turning-out .shared-student-flash-layer--three,
#instructor-flashcard-widget.is-page-turning-out .shared-student-flash-layer--three {
  transform: translateX(43px) translateY(22px) rotate(7deg);
}

@media (prefers-reduced-motion: reduce) {
  #student-flashcard-widget .student-flashcard-showcase-card,
  #student-instructor-flashcard-widget .shared-student-flash-layer,
  #student-instructor-flashcard-widget .shared-student-flash-card,
  #instructor-flashcard-widget .shared-student-flash-layer,
  #instructor-flashcard-widget .shared-student-flash-card {
    transition: none !important;
    animation-duration: 1ms !important;
  }
}

/* FLASHCARDS ALL PAGE TURN V2 END */

/* FLASHCARDS HIDE COPY CLEAN DASHBOARD V1 SHARED START */
.shared-student-flash-status > span:nth-child(2),
.shared-student-flash-note {
    display: none !important;
}
/* FLASHCARDS HIDE COPY CLEAN DASHBOARD V1 SHARED END */


/* SHARED_FLASHCARDS_ADMIN_PAGE_V1_START */
.admin-flashcards-shared-section {
  width: 100%;
  min-width: 0;
}
#admin-flashcards-shared-page {
  display: grid;
  gap: 24px;
  width: 100%;
  min-width: 0;
}
.shared-flashcards-page-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 24px;
  border: 1px solid rgba(148, 163, 184, .18);
  border-radius: 22px;
  background: linear-gradient(145deg, rgba(15,23,42,.96), rgba(20,29,52,.94));
  box-shadow: 0 18px 48px rgba(2, 6, 23, .25);
}
.shared-flashcards-page-toolbar span { color: #38bdf8; font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.shared-flashcards-page-toolbar h2 { margin: 5px 0 7px; font-size: clamp(22px, 3vw, 32px); }
.shared-flashcards-page-toolbar p { margin: 0; color: #94a3b8; }
.shared-flashcards-page-toolbar button,
.shared-deck-actions button {
  border: 1px solid rgba(148,163,184,.25);
  border-radius: 12px;
  padding: 11px 16px;
  background: rgba(30,41,59,.9);
  color: #e2e8f0;
  font-weight: 800;
  cursor: pointer;
}
.shared-flashcards-page-toolbar button.primary,
.shared-deck-actions button.primary { border-color: transparent; background: linear-gradient(135deg,#0ea5e9,#2563eb); color: white; }
.shared-deck-library-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(300px,1fr)); gap: 20px; }
.shared-deck-library-card { display: grid; gap: 18px; min-width: 0; padding: 20px; border: 1px solid rgba(148,163,184,.18); border-radius: 22px; background: rgba(15,23,42,.92); box-shadow: 0 18px 45px rgba(2,6,23,.2); overflow: hidden; }
.shared-deck-library-card > header { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.shared-deck-library-card > header span { color:#38bdf8; font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.shared-deck-library-card > header h3 { margin:5px 0 0; font-size:20px; }
.shared-deck-library-card > header strong { display:grid; place-items:center; min-width:42px; height:42px; border-radius:13px; background:rgba(14,165,233,.14); color:#7dd3fc; }
.shared-deck-preview-stage { position:relative; min-height:210px; padding:14px 10px 0; }
.shared-deck-preview-stage > span { position:absolute; inset:22px 18px 4px; border-radius:18px; background:#26344f; transform:rotate(3deg); opacity:.7; }
.shared-deck-preview-stage > span:nth-child(2) { inset:15px 14px 9px; transform:rotate(-2deg); background:#334155; }
.shared-deck-preview-stage > section { position:relative; z-index:2; display:flex; flex-direction:column; justify-content:space-between; min-height:180px; padding:22px; border-radius:18px; background:linear-gradient(145deg,#111827,#1e293b); border:1px solid rgba(125,211,252,.18); }
.shared-deck-preview-stage small { color:#38bdf8; font-weight:800; letter-spacing:.09em; }
.shared-deck-preview-stage h4 { margin:16px 0; font-size:18px; line-height:1.45; }
.shared-deck-preview-stage footer { color:#94a3b8; font-size:13px; }
.shared-deck-actions { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:10px; }
.shared-deck-library-empty { grid-column:1/-1; display:grid; place-items:center; gap:8px; min-height:260px; padding:32px; border:1px dashed rgba(148,163,184,.28); border-radius:22px; color:#94a3b8; text-align:center; }
.shared-deck-library-empty strong { color:#e2e8f0; font-size:20px; }
@media (max-width: 700px) { .shared-flashcards-page-toolbar { align-items:stretch; flex-direction:column; } .shared-flashcards-page-toolbar button { width:100%; } .shared-deck-library-grid { grid-template-columns:1fr; } .shared-deck-actions button { flex:1 1 100%; } }
/* SHARED_FLASHCARDS_ADMIN_PAGE_V1_END */


/* FLASHCARDS_VISUAL_AUTOPLAY_V1_START */
.flashcards-factory-toolbar,.student-shared-flashcards-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:24px;padding:22px 24px;border:1px solid rgba(120,150,205,.16);border-radius:22px;background:linear-gradient(145deg,rgba(16,31,55,.96),rgba(11,23,42,.94));box-shadow:0 18px 42px rgba(2,8,23,.18)}
.flashcards-factory-toolbar span,.flashcards-factory-create span,.student-shared-flashcards-toolbar span{color:#66a1ff;font-size:.7rem;font-weight:800;letter-spacing:.14em}.flashcards-factory-toolbar h2,.student-shared-flashcards-toolbar h2{margin:.28rem 0;font-size:1.5rem}.flashcards-factory-toolbar p,.flashcards-factory-create p,.student-shared-flashcards-toolbar p{margin:0;color:#93a4bd}
.flashcards-factory-toolbar button,.flashcards-factory-create .primary{border:1px solid rgba(100,145,230,.24);border-radius:11px;padding:10px 15px;background:rgba(25,50,91,.76);color:#eaf2ff;font-weight:800;cursor:pointer}
.flashcards-factory-create{margin:0 0 24px;padding:22px;border:1px solid rgba(91,139,230,.28);border-radius:20px;background:rgba(13,26,47,.94)}.flashcards-factory-create header,.flashcards-factory-create footer{display:flex;align-items:center;justify-content:space-between;gap:16px}.flashcards-factory-create header button{border:0;background:transparent;color:#cbd5e1;font-size:1.6rem}.flashcards-factory-create>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.flashcards-factory-create label{display:grid;gap:8px;font-weight:700}.flashcards-factory-create input{box-sizing:border-box;width:100%;padding:12px;border:1px solid rgba(148,163,184,.24);border-radius:12px;background:#0e1b30;color:#f8fafc}
.student-shared-flashcards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,390px));gap:28px;align-items:start}
.flashcards-factory-module,.student-shared-deck-module{box-sizing:border-box;min-width:0;padding:16px;overflow:visible;border:1px solid rgba(108,139,197,.2);border-radius:22px;background:linear-gradient(155deg,rgba(17,32,56,.98),rgba(10,22,40,.98));box-shadow:0 20px 48px rgba(2,8,23,.24),inset 0 1px 0 rgba(255,255,255,.025)}
.flashcards-factory-module-heading,.student-shared-deck-module>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;min-height:58px;margin-bottom:12px}.flashcards-factory-module-heading span,.student-shared-deck-module>header span{display:block;color:#5f9cff;font-size:.66rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.flashcards-factory-module-heading h3,.student-shared-deck-module>header h3{margin:.28rem 0 0;color:#f4f7fc;font-size:1.17rem;line-height:1.22}.flashcards-factory-module-heading>strong,.student-shared-deck-module>header>strong,.student-shared-flashcards-toolbar>strong{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:13px;background:rgba(42,88,171,.34);color:#8eb9ff}
.flashcards-factory-preview,.student-shared-deck-preview{position:relative;display:block;box-sizing:border-box;width:100%;height:438px;margin:0 auto 16px;padding:0;overflow:visible;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;isolation:isolate;perspective:1100px}
.flashcards-factory-layer,.flashcards-factory-preview>section,.student-shared-deck-preview>i,.student-shared-deck-preview>section{position:absolute;box-sizing:border-box;border:1px solid rgba(86,127,203,.2);border-radius:20px;background:linear-gradient(155deg,#152641,#0c192d 74%)}
.flashcards-factory-layer,.student-shared-deck-preview>i{inset:18px 4px 0 18px;pointer-events:none;transform-origin:center bottom;box-shadow:0 20px 38px rgba(0,0,0,.2)}.flashcards-factory-layer.one,.student-shared-deck-preview>i.one{z-index:1;opacity:.42;transform:translate(18px,18px) rotate(1.8deg)}.flashcards-factory-layer.two,.student-shared-deck-preview>i.two{z-index:2;opacity:.58;transform:translate(12px,12px) rotate(1.15deg)}.flashcards-factory-layer.three,.student-shared-deck-preview>i.three{z-index:3;opacity:.76;transform:translate(6px,6px) rotate(.55deg)}
.flashcards-factory-preview>section,.student-shared-deck-preview>section{inset:0 22px 22px 0;z-index:4;display:flex;flex-direction:column;min-width:0;padding:22px 22px 20px;pointer-events:none;background:radial-gradient(circle at 72% 0,rgba(52,101,190,.18),transparent 46%),linear-gradient(155deg,#172945,#101d33 74%);box-shadow:0 20px 42px rgba(2,8,23,.34),inset 0 1px 0 rgba(255,255,255,.028);transform-origin:84% 78%;will-change:transform,opacity}
.flashcards-factory-card-meta,.student-shared-deck-preview section>header{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:31px}.flashcards-factory-card-meta span,.student-shared-deck-preview section>header span{display:inline-flex;align-items:center;max-width:72%;padding:6px 11px;overflow:hidden;border-radius:999px;background:rgba(42,89,176,.28);color:#bdd5ff;font-size:.64rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.flashcards-factory-card-meta strong,.student-shared-deck-preview section>header strong{flex:0 0 auto;color:#e1ebff;font-size:.72rem;font-weight:800}
.flashcards-factory-card-content,.student-shared-deck-preview section>div{min-height:0;padding-top:31px}.flashcards-factory-card-content small,.student-shared-deck-preview small{display:block;color:#9eacc2;font-size:.63rem;font-weight:800;letter-spacing:.09em}.flashcards-factory-card-content h4,.student-shared-deck-preview h4{max-width:100%;margin:26px 0 0;color:#f6f8fc;font-size:1.18rem;font-weight:800;line-height:1.42;overflow-wrap:anywhere;text-align:left}
.flashcards-factory-card-footer,.student-shared-deck-preview section>footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:auto}.flashcards-factory-progress,.student-shared-deck-preview section>footer>span{display:inline-flex;align-items:center;justify-content:flex-start;flex:1 1 auto;gap:5px}.flashcards-factory-progress i,.student-shared-deck-preview section>footer i{display:block;width:5px;height:5px;border-radius:999px;background:#50617d;opacity:.9;transition:width .18s ease,background .18s ease}.flashcards-factory-progress i.active,.student-shared-deck-preview section>footer i.active{width:18px;background:#4d7dff;box-shadow:0 0 10px rgba(77,125,255,.38)}
.flashcards-factory-card-footer>button,.student-shared-deck-preview>button[data-student-preview-next]{appearance:none;-webkit-appearance:none;display:inline-grid;place-items:center;flex:0 0 32px;width:32px;height:32px;min-width:32px;min-height:32px;padding:0;margin:0;pointer-events:auto;border:1px solid rgba(88,132,215,.34);border-radius:999px;background:rgba(21,48,91,.84);color:#dce9ff;font:800 21px/1 system-ui,sans-serif;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}.flashcards-factory-card-footer>button:hover,.student-shared-deck-preview>button[data-student-preview-next]:hover{transform:translateY(-1px);border-color:rgba(102,153,255,.66);background:rgba(25,59,112,.96)}
.flashcards-factory-actions{display:grid;grid-template-columns:.9fr 1.1fr;gap:9px}.flashcards-factory-actions button,.student-shared-deck-open{min-height:40px;padding:9px 12px;border:1px solid rgba(105,137,194,.2);border-radius:11px;background:rgba(12,25,46,.64);color:#dce6f7;font-size:.82rem;font-weight:800;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease}.flashcards-factory-actions button:hover,.student-shared-deck-open:hover{border-color:rgba(100,148,238,.46);background:rgba(23,48,89,.78);color:#fff}.flashcards-factory-actions .primary{border-color:rgba(61,129,234,.3);background:linear-gradient(135deg,rgba(20,159,195,.82),rgba(45,99,220,.88));color:#fff}.flashcards-factory-actions .flashcards-factory-delete{grid-column:1/-1;min-height:38px;border-color:rgba(228,92,116,.25);background:rgba(91,25,43,.16);color:#f1a5b3}
.student-shared-flashcards-page{display:block;width:100%;padding-top:10px}.student-shared-deck-open{display:block;width:100%;background:rgba(18,42,78,.72)}.student-shared-flashcards-empty{grid-column:1/-1;display:grid;gap:8px;padding:38px;border:1px dashed rgba(148,163,184,.25);border-radius:18px;color:#94a3b8;text-align:center}.student-shared-flashcards-empty strong{color:#e2e8f0}
.flashcards-factory-preview.is-autoplay-turning-out>section,.student-shared-deck-preview.is-autoplay-turning-out>section{animation:flashcardPreviewTurnOut .36s cubic-bezier(.4,0,.2,1) both}.flashcards-factory-preview.is-autoplay-turning-in>section,.student-shared-deck-preview.is-autoplay-turning-in>section{animation:flashcardPreviewTurnIn .42s cubic-bezier(.22,1,.36,1) both}
@keyframes flashcardPreviewTurnOut{0%{opacity:1;transform:translate3d(0,0,0) rotate(0) scale(1)}100%{opacity:0;transform:translate3d(24px,18px,-60px) rotate(1.4deg) scale(.965)}}@keyframes flashcardPreviewTurnIn{0%{opacity:0;transform:translate3d(-14px,-8px,30px) rotate(-.8deg) scale(1.018)}100%{opacity:1;transform:translate3d(0,0,0) rotate(0) scale(1)}}
@media(max-width:720px){.flashcards-factory-toolbar,.student-shared-flashcards-toolbar{align-items:stretch;flex-direction:column}.flashcards-factory-create>div,.flashcards-factory-grid,.student-shared-flashcards-grid,.flashcards-factory-actions{grid-template-columns:1fr}.flashcards-factory-preview,.student-shared-deck-preview{height:425px}.flashcards-factory-actions .flashcards-factory-delete{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.flashcards-factory-preview.is-autoplay-turning-out>section,.flashcards-factory-preview.is-autoplay-turning-in>section,.student-shared-deck-preview.is-autoplay-turning-out>section,.student-shared-deck-preview.is-autoplay-turning-in>section{animation:none}}
/* FLASHCARDS_VISUAL_AUTOPLAY_V1_END */

/* STUDENT_SHARED_UNSEEN_COUNTER_V1_START */
#shared-dashboard-stats.shared-dashboard-stats {
  box-sizing: border-box;
  inline-size: 100% !important;
  width: 100% !important;
  max-inline-size: none !important;
  max-width: none !important;
  margin: 26px 0 28px;
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  grid-auto-flow: column;
  grid-auto-columns: minmax(0, 1fr);
  gap: clamp(14px, 1.2vw, 22px);
  align-items: stretch;
  justify-content: stretch;
  overflow: visible;
}

#shared-dashboard-stats > .shared-summary-card {
  box-sizing: border-box;
  inline-size: 100% !important;
  width: 100% !important;
  min-inline-size: 0 !important;
  min-width: 0 !important;
  max-inline-size: none !important;
  max-width: none !important;
  flex: 1 1 0 !important;
  min-height: 104px;
  margin: 0 !important;
  padding: 18px clamp(16px, 1.3vw, 24px);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  justify-self: stretch;
}

#shared-dashboard-stats > .shared-summary-card:nth-child(3) i {
  color: #78e3ff;
}

/*
 * Mantém cinco colunas fixas enquanto houver espaço de desktop.
 * A quebra só ocorre em telas realmente menores.
 */
@media (max-width: 900px) {
  #shared-dashboard-stats.shared-dashboard-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row;
  }
}

@media (max-width: 560px) {
  #shared-dashboard-stats.shared-dashboard-stats {
    grid-template-columns: 1fr !important;
  }
}
/* STUDENT_SHARED_UNSEEN_COUNTER_V1_END */


/* STUDENT_SHARED_DECK_SHOWCASE_V3_START
 * Pilha compartilhada com altura fixa e transição de descarte/promoção.
 * A largura original é preservada; apenas a animação e a numeração das
 * camadas reais foram ajustadas.
 */
.student-shared-deck-module.student-flashcard-showcase {
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  height: auto;
  min-height: 0;
  padding: 18px;
  overflow: hidden;
  border: 1px solid rgba(108, 139, 197, 0.2);
  border-radius: 22px;
  background:
    radial-gradient(circle at 88% 4%, rgba(65, 96, 205, 0.12), transparent 30%),
    linear-gradient(165deg, rgba(17, 31, 56, 0.98), rgba(10, 22, 42, 0.99));
  box-shadow:
    0 24px 58px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

.student-shared-deck-module > .student-flashcard-showcase-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 0;
  margin: 0;
}

.student-shared-deck-module .student-flashcard-showcase-brand {
  display: flex;
  align-items: center;
  min-width: 0;
  gap: 10px;
}

.student-shared-deck-module .student-flashcard-showcase-brand > div {
  min-width: 0;
}

.student-shared-deck-module .student-flashcard-showcase-icon {
  display: grid;
  flex: 0 0 38px;
  width: 38px;
  height: 38px;
  padding: 0;
  color: #79a0ff;
  font-size: 19px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  background: rgba(64, 102, 206, 0.2);
  border: 1px solid rgba(108, 143, 231, 0.18);
  border-radius: 11px;
  place-items: center;
}

.student-shared-deck-module .student-flashcard-showcase-brand h2 {
  max-width: 100%;
  margin: 0 0 2px;
  overflow: hidden;
  color: #f4f7fc;
  font-size: 19px;
  font-weight: 800;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.student-shared-deck-module .student-flashcard-showcase-brand p {
  margin: 0;
  color: #95a6bd;
  font-size: 11px;
  line-height: 1.35;
}

.student-shared-deck-module .student-flashcard-showcase-open {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  flex: 0 0 auto;
  min-width: 0;
  min-height: 0;
  padding: 9px 12px;
  color: #edf3ff;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
  background: rgba(20, 38, 68, 0.9);
  border: 1px solid rgba(117, 145, 205, 0.28);
  border-radius: 10px;
  cursor: pointer;
  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

.student-shared-deck-module .student-flashcard-showcase-open:hover,
.student-shared-deck-module .student-flashcard-showcase-open:focus-visible {
  border-color: rgba(91, 132, 255, 0.54);
  background: rgba(29, 51, 91, 0.96);
  transform: translateY(-1px);
}

.student-shared-deck-module .student-flashcard-showcase-open > span {
  display: inline;
  padding: 0;
  color: inherit;
  font-size: 17px;
  font-weight: 800;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  background: transparent;
  border-radius: 0;
}

.student-shared-deck-module > .student-flashcard-showcase-mode {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 10px;
  margin-top: 20px;
  color: #95a6bd;
  font-size: 9px;
  font-weight: 700;
}

.student-shared-deck-module .student-flashcard-showcase-mode > span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.student-shared-deck-module .student-flashcard-showcase-mode i {
  display: block;
  width: 7px;
  height: 7px;
  background: #315cff;
  border-radius: 50%;
  box-shadow: 0 0 0 4px rgba(49, 92, 255, 0.12);
}

/* STUDENT_SHARED_DECK_FIXED_HEIGHT_V1_START
 * Altura única para todos os cards; o enunciado excedente é cortado
 * na área central sem deslocar o cabeçalho ou o rodapé.
 */
.student-shared-deck-preview.student-flashcard-showcase-stage {
  position: relative;
  display: block;
  flex: none;
  box-sizing: border-box;
  width: 100%;
  height: 458px;
  min-height: 458px;
  max-height: 458px;
  margin: 17px 0 0;
  padding: 0;
  overflow: visible;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: default;
  isolation: isolate;
  perspective: 1100px;
}
/* STUDENT_SHARED_DECK_FIXED_HEIGHT_V1_END */

.student-shared-deck-preview > .student-flashcard-showcase-card {
  box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  width: calc(100% - 58px);
  height: calc(100% - 28px);
  min-height: 0;
  padding: 19px;
  overflow: hidden;
  border: 1px solid rgba(118, 148, 207, 0.2);
  border-radius: 16px;
  background: linear-gradient(155deg, #142440, #0d1a30);
  box-shadow:
    0 18px 38px rgba(0, 0, 0, 0.3),
    inset 0 1px 0 rgba(255, 255, 255, 0.035);
  transform-origin: center center;
  backface-visibility: hidden;
  will-change: transform, opacity;
}

.student-shared-deck-preview > .student-flashcard-showcase-card-back {
  pointer-events: none;
  background: linear-gradient(155deg, #152640, #0e1b31);
}

.student-shared-deck-preview > .student-flashcard-showcase-card-back > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.student-shared-deck-preview > .student-flashcard-showcase-card-back span {
  display: inline-flex;
  align-items: center;
  max-width: 72%;
  padding: 5px 8px;
  overflow: hidden;
  color: #9db7ff;
  font-size: 9px;
  font-weight: 800;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: rgba(67, 104, 205, 0.18);
  border-radius: 999px;
  visibility: hidden;
}

.student-shared-deck-preview > .student-flashcard-showcase-card-back small {
  flex: 0 0 auto;
  color: #9baac0;
  font-size: 9px;
  font-weight: 800;
}

.student-shared-deck-preview > .student-flashcard-showcase-card-back strong {
  display: none;
}

.student-shared-deck-preview > .student-flashcard-showcase-card-back.is-placeholder > div {
  visibility: hidden;
}

.student-shared-deck-preview > .student-flashcard-showcase-card-back-one {
  z-index: 4;
  opacity: 0.9;
  transform: translateX(18px) translateY(7px) rotate(2.4deg) scale(0.97);
}

.student-shared-deck-preview > .student-flashcard-showcase-card-back-two {
  z-index: 3;
  opacity: 0.7;
  transform: translateX(33px) translateY(14px) rotate(4.8deg) scale(0.945);
}

.student-shared-deck-preview > .student-flashcard-showcase-card-back-three {
  z-index: 2;
  opacity: 0.5;
  transform: translateX(46px) translateY(21px) rotate(7deg) scale(0.92);
}

.student-shared-deck-preview > .student-flashcard-showcase-card-back-four {
  z-index: 1;
  opacity: 0.32;
  transform: translateX(58px) translateY(28px) rotate(9deg) scale(0.895);
}

.student-shared-deck-preview > .student-shared-deck-card-front {
  z-index: 6;
  display: grid;
  grid-template-rows: minmax(0, 1fr) 30px;
  transform: translateX(0) translateY(0) rotate(-1.2deg) scale(1);
  opacity: 1;
}


.student-shared-deck-open-surface {
  display: grid;
  grid-template-rows: 31px minmax(0, 1fr);
  min-width: 0;
  min-height: 0;
  overflow: hidden;
  cursor: pointer;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}

.student-shared-deck-open-surface:focus-visible {
  outline: 3px solid rgba(111, 150, 255, 0.85);
  outline-offset: -2px;
  border-radius: 12px;
}

.student-shared-deck-card-front .student-flashcard-showcase-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 31px;
}

.student-shared-deck-card-front .student-flashcard-showcase-area {
  display: inline-flex;
  align-items: center;
  max-width: 72%;
  padding: 6px 9px;
  overflow: hidden;
  color: #9db7ff;
  font-size: 9px;
  font-weight: 800;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
  background: rgba(67, 104, 205, 0.18);
  border-radius: 999px;
}

.student-shared-deck-card-front .student-flashcard-showcase-counter {
  flex: 0 0 auto;
  color: #9baac0;
  font-size: 10px;
  font-weight: 800;
}

.student-shared-deck-question {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr);
  min-height: 0;
  padding: 32px 0 18px;
  overflow: hidden;
}

.student-shared-deck-question .student-flashcard-showcase-label {
  flex: 0 0 auto;
  margin: 0;
  color: #9baac0;
  font-size: 8px;
  font-weight: 900;
  line-height: 1.3;
  letter-spacing: 0.1em;
}

.student-shared-deck-question h3 {
  display: block;
  min-width: 0;
  min-height: 0;
  max-width: 100%;
  max-height: 100%;
  margin: 13px 0 0;
  padding: 0;
  overflow: hidden;
  color: #f2f6fc;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.48;
  overflow-wrap: anywhere;
  text-align: left;
}

.student-shared-deck-card-front .student-flashcard-showcase-navigation {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 30px;
}

.student-shared-deck-card-front .student-flashcard-showcase-dots {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
  gap: 5px;
  min-width: 0;
  overflow: hidden;
}

.student-shared-deck-card-front .student-flashcard-showcase-dots i {
  display: block;
  flex: 0 0 auto;
  width: 6px;
  height: 6px;
  background: #41506a;
  border-radius: 50%;
  transition: width 180ms ease, background 180ms ease;
}

.student-shared-deck-card-front .student-flashcard-showcase-dots i.active,
.student-shared-deck-card-front .student-flashcard-showcase-dots i.is-active {
  width: 16px;
  background: #4b78ff;
  border-radius: 999px;
  box-shadow: 0 0 12px rgba(67, 113, 255, 0.5);
}

.student-shared-deck-card-front .student-flashcard-showcase-navigation button {
  appearance: none;
  -webkit-appearance: none;
  display: grid;
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  min-width: 30px;
  min-height: 30px;
  padding: 0;
  color: #7fa3ff;
  font: 800 22px/1 system-ui, sans-serif;
  background: rgba(60, 91, 169, 0.17);
  border: 1px solid rgba(101, 136, 223, 0.2);
  border-radius: 50%;
  cursor: pointer;
  place-items: center;
  transition: transform 150ms ease, background 150ms ease, border-color 150ms ease;
}

.student-shared-deck-card-front .student-flashcard-showcase-navigation button:hover,
.student-shared-deck-card-front .student-flashcard-showcase-navigation button:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(102, 153, 255, 0.66);
  background: rgba(25, 59, 112, 0.96);
}

.student-shared-deck-card-front .student-flashcard-showcase-navigation button:disabled {
  opacity: 0.45;
  cursor: default;
  transform: none;
}

.student-shared-deck-preview > .student-shared-deck-card-outgoing {
  z-index: 20;
  pointer-events: none;
}

.student-shared-deck-preview.is-stack-advancing > .student-shared-deck-card-outgoing {
  animation: student-shared-stack-discard 340ms ease-in-out both;
}

.student-shared-deck-preview.is-stack-advancing > .student-shared-deck-card-front:not(.student-shared-deck-card-outgoing) {
  animation: student-shared-stack-promote 340ms ease-in-out both;
}

.student-shared-deck-preview.is-stack-advancing > .student-flashcard-showcase-card-back-one {
  animation: student-shared-stack-back-one 340ms ease-in-out both;
}

.student-shared-deck-preview.is-stack-advancing > .student-flashcard-showcase-card-back-two {
  animation: student-shared-stack-back-two 340ms ease-in-out both;
}

.student-shared-deck-preview.is-stack-advancing > .student-flashcard-showcase-card-back-three {
  animation: student-shared-stack-back-three 340ms ease-in-out both;
}

.student-shared-deck-preview.is-stack-advancing > .student-flashcard-showcase-card-back-four {
  animation: student-shared-stack-back-four 340ms ease-in-out both;
}

@keyframes student-shared-stack-discard {
  from {
    opacity: 1;
    transform: translateX(0) translateY(0) rotate(-1.2deg) scale(1);
  }

  to {
    opacity: 0;
    transform: translateX(-96px) translateY(-4px) rotate(-7deg) scale(0.97);
  }
}

@keyframes student-shared-stack-promote {
  from {
    opacity: 0.6;
    transform: translateX(18px) translateY(7px) rotate(2.4deg) scale(0.95);
  }

  to {
    opacity: 1;
    transform: translateX(0) translateY(0) rotate(-1.2deg) scale(1);
  }
}

@keyframes student-shared-stack-back-one {
  from {
    opacity: 0.7;
    transform: translateX(33px) translateY(14px) rotate(4.8deg) scale(0.945);
  }

  to {
    opacity: 0.9;
    transform: translateX(18px) translateY(7px) rotate(2.4deg) scale(0.97);
  }
}

@keyframes student-shared-stack-back-two {
  from {
    opacity: 0.5;
    transform: translateX(46px) translateY(21px) rotate(7deg) scale(0.92);
  }

  to {
    opacity: 0.7;
    transform: translateX(33px) translateY(14px) rotate(4.8deg) scale(0.945);
  }
}

@keyframes student-shared-stack-back-three {
  from {
    opacity: 0.32;
    transform: translateX(58px) translateY(28px) rotate(9deg) scale(0.895);
  }

  to {
    opacity: 0.5;
    transform: translateX(46px) translateY(21px) rotate(7deg) scale(0.92);
  }
}

@keyframes student-shared-stack-back-four {
  from {
    opacity: 0.18;
    transform: translateX(68px) translateY(34px) rotate(10.5deg) scale(0.87);
  }

  to {
    opacity: 0.32;
    transform: translateX(58px) translateY(28px) rotate(9deg) scale(0.895);
  }
}

@media (max-width: 720px) {
  .student-shared-deck-module.student-flashcard-showcase {
    padding: 14px;
  }

  .student-shared-deck-preview > .student-flashcard-showcase-card {
    width: calc(100% - 35px);
    height: calc(100% - 23px);
    padding: 15px;
  }

  .student-shared-deck-preview > .student-flashcard-showcase-card-back-one {
    transform: translateX(10px) translateY(6px) rotate(2.4deg) scale(0.97);
  }

  .student-shared-deck-preview > .student-flashcard-showcase-card-back-two {
    transform: translateX(19px) translateY(12px) rotate(4.8deg) scale(0.945);
  }

  .student-shared-deck-preview > .student-flashcard-showcase-card-back-three {
    transform: translateX(27px) translateY(18px) rotate(7deg) scale(0.92);
  }

  .student-shared-deck-preview > .student-flashcard-showcase-card-back-four {
    transform: translateX(35px) translateY(23px) rotate(9deg) scale(0.895);
  }

  .student-shared-deck-question {
    padding-top: 26px;
  }

  .student-shared-deck-question h3 {
    font-size: 16px;
    line-height: 1.45;
  }
}

@media (max-width: 390px) {
  .student-shared-deck-module .student-flashcard-showcase-brand h2 {
    font-size: 16px;
  }

  .student-shared-deck-module .student-flashcard-showcase-open {
    padding: 8px 10px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .student-shared-deck-preview.is-stack-advancing > .student-flashcard-showcase-card {
    animation-duration: 1ms !important;
  }
}
/* STUDENT_SHARED_DECK_SHOWCASE_V3_END */


/* FLASHCARDS_TOUCH_CONTROL_ISOLATION_V2_START
 * Isolamento estrutural: o rodapé não é descendente da área que abre o
 * baralho. A seta ocupa somente a própria caixa visual e fica acima do card.
 */
.student-shared-deck-card-front .student-flashcard-showcase-navigation,
.flashcards-factory-card-footer {
  position: relative;
  z-index: 24;
  pointer-events: auto;
}

.student-shared-deck-card-front .student-flashcard-showcase-dots,
.flashcards-factory-progress {
  pointer-events: none;
}

.student-shared-deck-card-front .student-flashcard-showcase-navigation button,
.flashcards-factory-card-footer > button,
[data-sd-preview-next],
[data-sd-instructor-preview-next] {
  position: relative;
  z-index: 30;
  box-sizing: border-box;
  pointer-events: auto;
  touch-action: manipulation;
  user-select: none;
  -webkit-user-select: none;
  -webkit-tap-highlight-color: transparent;
  isolation: isolate;
}

.student-shared-deck-preview.student-flashcard-showcase-stage,
.flashcards-factory-preview {
  touch-action: manipulation;
}
/* FLASHCARDS_TOUCH_CONTROL_ISOLATION_V2_END */


/* STUDENT_SHARED_LIBRARY_UX_V1_START */
.student-shared-flashcards-toolbar > .student-shared-library-summary {
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  gap: 12px;
  min-width: 220px;
}
.student-shared-library-summary > strong {
  color: #91b9ff;
  font-size: 13px;
  font-weight: 850;
  white-space: nowrap;
}
.student-shared-library-summary label {
  display: flex;
  align-items: center;
  gap: 9px;
  color: #92a5c0;
  font-size: 11px;
  font-weight: 750;
}
.student-shared-library-summary select {
  min-height: 38px;
  padding: 0 34px 0 12px;
  color: #eaf1ff;
  font: inherit;
  background: #0d1b31;
  border: 1px solid rgba(112, 148, 214, .28);
  border-radius: 10px;
}
.student-shared-flashcards-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;
}
.student-shared-deck-module .student-flashcard-showcase-brand h2 {
  display: -webkit-box;
  max-width: 100%;
  overflow: hidden;
  line-height: 1.18;
  white-space: normal;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.student-shared-deck-module > .student-flashcard-showcase-mode {
  justify-content: space-between;
}
.student-shared-deck-state {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 0 8px;
  color: #92a5c0;
  font-size: 8px;
  font-style: normal;
  font-weight: 850;
  letter-spacing: .04em;
  background: rgba(94, 122, 174, .12);
  border: 1px solid rgba(118, 148, 207, .15);
  border-radius: 999px;
}
.student-shared-deck-module.is-started .student-shared-deck-state { color: #a9c1ff; background: rgba(55, 96, 209, .17); }
.student-shared-deck-module.is-completed .student-shared-deck-state { color: #8be0bd; background: rgba(38, 147, 108, .14); }
.student-shared-deck-card-front { grid-template-rows: minmax(0, 1fr) 4px 30px !important; }
.student-shared-deck-progress {
  align-self: center;
  width: 100%;
  height: 3px;
  overflow: hidden;
  background: rgba(87, 108, 143, .22);
  border-radius: 999px;
}
.student-shared-deck-progress > i {
  display: block;
  width: var(--student-deck-progress, 0%);
  height: 100%;
  background: linear-gradient(90deg, #315cff, #70a0ff);
  border-radius: inherit;
  transition: width 240ms ease;
}
.student-shared-deck-question { position: relative; }
.student-shared-deck-question::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 40px;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(13,26,48,0), rgba(13,26,48,.96) 82%);
}
.student-shared-deck-question h3 { padding-bottom: 26px; }
@media (max-width: 1399px) {
  .student-shared-flashcards-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 1040px) {
  .student-shared-flashcards-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
  .student-shared-flashcards-toolbar > .student-shared-library-summary { align-items: stretch; width: 100%; }
  .student-shared-library-summary label { justify-content: space-between; }
  .student-shared-library-summary select { flex: 1 1 auto; }
  .student-shared-flashcards-grid { grid-template-columns: 1fr; gap: 20px; }
}
/* STUDENT_SHARED_LIBRARY_UX_V1_END */

/* FLASHCARDS_MINIMAL_CARDS_V2_START */
/* Mantém a altura/efeitos atuais e impede qualquer conteúdo de escapar. */
.flashcards-factory-module,
.student-shared-deck-module {
  min-width: 0;
  overflow: hidden;
}

.flashcards-factory-module-heading,
.student-shared-deck-module > header,
.student-flashcard-showcase-brand,
.student-flashcard-showcase-brand > div {
  min-width: 0;
}

.flashcards-factory-module-heading h3,
.student-shared-deck-module > header h3,
.student-flashcard-showcase-brand h2 {
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow-wrap: anywhere;
  text-overflow: ellipsis;
}

/* Preview do instrutor: estrutura fixa, rodapé imóvel e corte gradual. */
.flashcards-factory-preview {
  height: 438px;
  max-height: 438px;
  overflow: visible;
}

.flashcards-factory-preview > section {
  display: grid;
  grid-template-rows: 31px minmax(0, 1fr) 32px;
  height: calc(100% - 22px);
  max-height: calc(100% - 22px);
  overflow: hidden;
}

.flashcards-factory-card-content {
  position: relative;
  min-height: 0;
  overflow: hidden;
}

.flashcards-factory-card-content h4 {
  max-height: 100%;
  overflow: hidden;
  padding-bottom: 34px;
}

.flashcards-factory-card-content::after {
  content: "";
  position: absolute;
  z-index: 3;
  right: 0;
  bottom: 0;
  left: 0;
  height: 74px;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(16,29,51,0), rgba(16,29,51,.88) 62%, #101d33 100%);
}

.flashcards-factory-card-footer {
  position: relative;
  z-index: 5;
  min-width: 0;
  margin-top: 0;
}

/* Preview compartilhado: reforça o mesmo corte gradual sem afetar paginação. */
.student-shared-deck-question {
  min-height: 0;
  overflow: hidden;
}

.student-shared-deck-question::after {
  height: 78px;
  background: linear-gradient(180deg, rgba(16,29,51,0), rgba(16,29,51,.88) 62%, #101d33 100%);
}

.student-shared-deck-card-front,
.student-flashcard-showcase-card {
  overflow: hidden;
}

/* Visual mais limpo, preservando pilha, paginação e transições. */
.flashcards-factory-module,
.student-shared-deck-module.student-flashcard-showcase {
  border-color: rgba(112,145,205,.20);
  background: linear-gradient(155deg, rgba(17,32,56,.97), rgba(9,21,39,.98));
  box-shadow: 0 16px 38px rgba(2,8,23,.22), inset 0 1px 0 rgba(255,255,255,.025);
}

.flashcards-factory-preview > section,
.student-shared-deck-card-front {
  border-color: rgba(99,137,207,.22);
  box-shadow: 0 18px 34px rgba(2,8,23,.28), inset 0 1px 0 rgba(255,255,255,.028);
}

.flashcards-factory-card-meta span,
.student-shared-deck-card-front .student-shared-deck-tag {
  box-shadow: none;
}

.flashcards-factory-actions button {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (max-width: 650px) {
  .flashcards-factory-module-heading h3,
  .student-shared-deck-module > header h3,
  .student-flashcard-showcase-brand h2 {
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }

  .flashcards-factory-preview {
    height: 425px;
    max-height: 425px;
  }
}
/* FLASHCARDS_MINIMAL_CARDS_V2_END */

/* COURSES_FOUR_COLUMNS_FLASHCARDS_MIGRATION_V1_START */
@media (min-width: 1180px) {
  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"] {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: start !important;
  }

  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  > .student-modern-course-grid {
    grid-column: 1 / span 3 !important;
    grid-row: 1 !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: start !important;
    width: 100% !important;
    max-width: none !important;
  }

  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  > #student-flashcard-widget {
    grid-column: 4 !important;
    grid-row: 1 !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    justify-self: stretch !important;
    align-self: start !important;
  }

  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  > #student-instructor-flashcard-widget {
    display: none !important;
  }

  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  .student-modern-course-card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
  }
}

#student-shared-flashcards-page
.student-instructor-flashcards-migrated {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  width: 100%;
  min-width: 0;
  margin: 0 0 26px;
}

#student-shared-flashcards-page
#student-instructor-flashcard-widget {
  display: block;
  width: min(100%, 390px) !important;
  min-width: 0 !important;
  max-width: 390px !important;
  margin: 0 !important;
  justify-self: start !important;
  align-self: start !important;
}

@media (max-width: 1179px) {
  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  > #student-instructor-flashcard-widget {
    display: none !important;
  }
}
/* COURSES_FOUR_COLUMNS_FLASHCARDS_MIGRATION_V1_END */

/* CARDS_FIXED_HEIGHT_570_V1_START */

:root {
  --student-uniform-card-height: 570px;
}

@media (min-width: 1180px) {
  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  .student-modern-course-card {
    height: var(--student-uniform-card-height) !important;
    min-height: var(--student-uniform-card-height) !important;
    max-height: var(--student-uniform-card-height) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  .student-modern-course-card
  .student-modern-course-body {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  .student-modern-course-card
  .student-modern-course-meta {
    margin-top: auto !important;
  }

  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  .student-modern-course-card
  .student-modern-open-course {
    flex: 0 0 auto !important;
  }

  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  > #student-flashcard-widget,
  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  > #student-flashcard-widget
  .student-shared-deck-module,
  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  > #student-flashcard-widget
  .student-flashcard-showcase {
    height: var(--student-uniform-card-height) !important;
    min-height: var(--student-uniform-card-height) !important;
    max-height: var(--student-uniform-card-height) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  > #student-flashcard-widget
  .student-shared-deck-module {
    display: grid !important;
    grid-template-rows: auto auto minmax(0, 1fr) !important;
  }

  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  > #student-flashcard-widget
  .student-shared-deck-preview,
  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  > #student-flashcard-widget
  .student-flashcard-showcase-stage {
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow: hidden !important;
  }

  #student-view.shared-responsive-view
  .student-dashboard-split[data-courses-four-column="active"]
  > #student-flashcard-widget
  .student-flashcard-showcase-card {
    max-height: 100% !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }
}

#student-shared-flashcards-page
.student-shared-flashcards-grid
> .student-shared-deck-module,
#student-shared-flashcards-page
.student-shared-flashcards-grid
> .student-flashcard-showcase {
  height: var(--student-uniform-card-height) !important;
  min-height: var(--student-uniform-card-height) !important;
  max-height: var(--student-uniform-card-height) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

#student-shared-flashcards-page
.student-shared-flashcards-grid
> .student-shared-deck-module {
  display: grid !important;
  grid-template-rows: auto auto minmax(0, 1fr) !important;
}

#student-shared-flashcards-page
.student-shared-flashcards-grid
> .student-shared-deck-module
.student-shared-deck-preview,
#student-shared-flashcards-page
.student-shared-flashcards-grid
> .student-shared-deck-module
.student-flashcard-showcase-stage {
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  overflow: hidden !important;
}

#student-shared-flashcards-page
.student-shared-flashcards-grid
> .student-shared-deck-module
.student-flashcard-showcase-card {
  max-height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

#student-shared-flashcards-page
#student-instructor-flashcard-widget {
  height: var(--student-uniform-card-height) !important;
  min-height: var(--student-uniform-card-height) !important;
  max-height: var(--student-uniform-card-height) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

@media (max-width: 767px) {
  #student-shared-flashcards-page
  .student-shared-flashcards-grid
  > .student-shared-deck-module,
  #student-shared-flashcards-page
  .student-shared-flashcards-grid
  > .student-flashcard-showcase,
  #student-shared-flashcards-page
  #student-instructor-flashcard-widget {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
}

/* CARDS_FIXED_HEIGHT_570_V1_END */

/* STUDENT_OWN_DECK_LIBRARY_V1_START */
.student-own-flashcards-page {
  display: block !important;
  width: 100% !important;
  margin-top: 28px;
}

.student-own-flashcards-grid {
  width: 100%;
}

#student-own-flashcards-page
.student-own-flashcards-grid
> .student-own-deck-module {
  display: grid !important;
  grid-template-rows: auto auto minmax(0, 1fr) !important;
  height: var(--student-uniform-card-height, 570px) !important;
  min-height: var(--student-uniform-card-height, 570px) !important;
  max-height: var(--student-uniform-card-height, 570px) !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

#student-own-flashcards-page
.student-own-deck-module
.student-own-deck-preview {
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
  overflow: hidden !important;
}

#student-own-flashcards-page
.student-own-deck-module
.student-flashcard-showcase-card {
  min-height: 0 !important;
  max-height: 100% !important;
  overflow: hidden !important;
}

@media (max-width: 767px) {
  #student-own-flashcards-page
  .student-own-flashcards-grid
  > .student-own-deck-module {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
}
/* STUDENT_OWN_DECK_LIBRARY_V1_END */

/* OWN_FLASHCARDS_CONTENT_MANAGERS_V1_START */
.admin-my-flashcards-section {
  width: 100%;
  min-width: 0;
}

.admin-my-flashcards-section
[data-own-flashcards-heading] {
  width: 100%;
  box-sizing: border-box;
}

.admin-my-flashcards-section
#student-own-flashcards-page {
  width: 100%;
  min-width: 0;
}

@media (max-width: 767px) {
  .admin-my-flashcards-section
  [data-own-flashcards-heading] {
    align-items: stretch !important;
  }
}
/* OWN_FLASHCARDS_CONTENT_MANAGERS_V1_END */


/* NEXUS_INSTRUCTOR_VIDEOAULAS_STUDENT_PARITY_V1_R34_START */

#instructor-course-player-modal.instructor-student-parity-r34 {
    position: fixed;
    inset: 0;
    z-index: 12000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-player-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(1, 8, 22, 0.78);
    backdrop-filter: blur(8px);
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-player-dialog {
    position: relative;
    z-index: 1;
    width: min(1180px, calc(100vw - 36px));
    max-height: calc(100vh - 36px);
    overflow: hidden;
    color: #f7fbff;
    background: #071426;
    border: 1px solid rgba(102, 165, 255, 0.32);
    border-radius: 20px;
    box-shadow: 0 28px 90px rgba(0, 0, 0, 0.5);
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-player-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 22px 24px 18px;
    background: #112746;
    border-bottom: 1px solid rgba(123, 171, 235, 0.24);
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-player-header > div {
    min-width: 0;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-player-header span,
#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-module > span,
#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-content-card header span,
#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-author-card span,
#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-now-playing > span {
    color: #68a6ff;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: 0.04em;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-player-header h2 {
    margin: 6px 0 4px;
    color: #ffffff;
    font-size: clamp(22px, 2vw, 29px);
    line-height: 1.1;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-player-header p {
    max-width: 920px;
    margin: 0;
    color: #9eb7d8;
    font-size: 13px;
    line-height: 1.45;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-player-close {
    flex: 0 0 auto;
    width: 38px;
    height: 38px;
    padding: 0;
    color: #dcecff;
    font-size: 25px;
    line-height: 1;
    background: rgba(7, 20, 38, 0.46);
    border: 1px solid rgba(121, 173, 242, 0.34);
    border-radius: 11px;
    cursor: pointer;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-classroom {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 330px;
    min-height: 0;
    max-height: calc(100vh - 155px);
    overflow: hidden;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-video-area {
    min-width: 0;
    overflow-y: auto;
    padding: 24px;
    background: #061223;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-video-frame {
    width: 100%;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-video-stage {
    position: relative;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: #000000;
    border: 1px solid rgba(110, 163, 232, 0.23);
    border-radius: 14px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-video-stage video {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: #000000;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-center-play {
    position: absolute;
    z-index: 7;
    top: 50%;
    left: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 92px;
    height: 92px;
    padding: 0;
    color: #ffffff;
    background: rgba(38, 91, 230, 0.94);
    border: 2px solid rgba(255, 255, 255, 0.82);
    border-radius: 50%;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.42);
    cursor: pointer;
    transform: translate(-50%, -50%);
    transition: transform 140ms ease, opacity 140ms ease;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-center-play:hover:not(:disabled) {
    transform: translate(-50%, -50%) scale(1.05);
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-center-play:disabled {
    opacity: 0;
    pointer-events: none;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-center-play[hidden] {
    display: none !important;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-center-play span {
    padding-left: 3px;
    font-size: 28px;
    line-height: 1;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-center-play small {
    font-size: 10px;
    font-weight: 850;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-top-actions {
    position: absolute;
    z-index: 8;
    top: 14px;
    right: 14px;
    display: flex;
    gap: 8px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-top-actions button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-height: 40px;
    padding: 9px 12px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 800;
    background: rgba(4, 12, 30, 0.82);
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 10px;
    backdrop-filter: blur(8px);
    cursor: pointer;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-top-actions button:hover:not(:disabled),
#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-top-actions button.is-active {
    background: rgba(38, 91, 230, 0.96);
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-top-actions button:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-top-actions button[hidden] {
    display: none !important;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-top-actions span {
    font-size: 18px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-video-loader {
    position: absolute;
    z-index: 9;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    background: rgba(0, 0, 0, 0.26);
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-video-stage.is-loading
.instructor-course-video-loader {
    display: flex;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-video-loader span {
    width: 42px;
    height: 42px;
    border: 4px solid rgba(255, 255, 255, 0.24);
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: nexusInstructorR34Spin 0.8s linear infinite;
}

@keyframes nexusInstructorR34Spin {
    to {
        transform: rotate(360deg);
    }
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-video-time {
    position: absolute;
    z-index: 5;
    left: 15px;
    bottom: 48px;
    padding: 6px 9px;
    color: #ffffff;
    font-size: 11px;
    font-weight: 800;
    background: rgba(4, 12, 30, 0.72);
    border-radius: 8px;
    pointer-events: none;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-now-playing {
    padding: 18px 4px 4px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-now-playing h3 {
    margin: 6px 0 5px;
    color: #f8fbff;
    font-size: 22px;
    line-height: 1.2;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-now-playing p {
    margin: 0;
    color: #91a7c2;
    font-size: 12px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-playlist {
    min-width: 0;
    overflow-y: auto;
    padding: 20px;
    background: #0d213c;
    border-left: 1px solid rgba(113, 163, 229, 0.22);
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-author-card {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 13px;
    background: #173454;
    border: 1px solid rgba(113, 166, 237, 0.24);
    border-radius: 12px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-author-avatar {
    display: grid;
    place-items: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    color: #ffffff;
    font-size: 13px;
    font-weight: 900;
    background: #5268ff;
    border-radius: 11px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-author-card > div:last-child {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 2px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-author-card strong {
    overflow: hidden;
    color: #ffffff;
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-author-card small {
    color: #90a7c2;
    font-size: 11px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-content-card {
    margin-top: 18px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-content-card > header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-content-card h2 {
    margin: 4px 0 0;
    color: #ffffff;
    font-size: 18px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-content-card > header > strong {
    color: #9db5d4;
    font-size: 12px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-module {
    margin-top: 15px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-module h3 {
    margin: 5px 0 10px;
    color: #eaf3ff;
    font-size: 13px;
    line-height: 1.3;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-module > div {
    display: grid;
    gap: 8px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-lesson {
    display: grid;
    grid-template-columns: 32px minmax(0, 1fr) 26px;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 10px 11px;
    text-align: left;
    color: #dcecff;
    background: #102946;
    border: 1px solid rgba(110, 163, 232, 0.21);
    border-radius: 10px;
    cursor: pointer;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-lesson:hover,
#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-lesson.is-active {
    background: #17375e;
    border-color: #428eff;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-lesson-number {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    font-size: 12px;
    font-weight: 850;
    background: rgba(80, 145, 255, 0.15);
    border-radius: 8px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-lesson-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 3px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-lesson-copy strong {
    overflow: hidden;
    font-size: 12px;
    line-height: 1.25;
    text-overflow: ellipsis;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-lesson-copy small {
    color: #91a7c3;
    font-size: 10px;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-lesson-play {
    color: #86baff;
    font-size: 13px;
    text-align: center;
}

#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-video-empty,
#instructor-course-player-modal.instructor-student-parity-r34
.instructor-course-sidebar-empty {
    display: grid;
    place-items: center;
    min-height: 180px;
    padding: 24px;
    color: #9bb0ca;
    text-align: center;
}

@media (max-width: 920px) {
    #instructor-course-player-modal.instructor-student-parity-r34 {
        align-items: stretch;
        padding: 8px;
    }

    #instructor-course-player-modal.instructor-student-parity-r34
    .instructor-course-player-dialog {
        width: 100%;
        max-height: calc(100vh - 16px);
    }

    #instructor-course-player-modal.instructor-student-parity-r34
    .instructor-course-classroom {
        display: block;
        max-height: calc(100vh - 145px);
        overflow-y: auto;
    }

    #instructor-course-player-modal.instructor-student-parity-r34
    .instructor-course-video-area {
        overflow: visible;
        padding: 14px;
    }

    #instructor-course-player-modal.instructor-student-parity-r34
    .instructor-course-playlist {
        overflow: visible;
        padding: 14px;
        border-top: 1px solid rgba(113, 163, 229, 0.22);
        border-left: 0;
    }

    #instructor-course-player-modal.instructor-student-parity-r34
    .instructor-course-top-actions button {
        width: 40px;
        padding: 0;
    }

    #instructor-course-player-modal.instructor-student-parity-r34
    .instructor-course-top-actions small {
        display: none;
    }

    #instructor-course-player-modal.instructor-student-parity-r34
    .instructor-course-center-play {
        width: 76px;
        height: 76px;
    }

    #instructor-course-player-modal.instructor-student-parity-r34
    .instructor-course-center-play small {
        display: none;
    }
}

/* NEXUS_INSTRUCTOR_VIDEOAULAS_STUDENT_PARITY_V1_R34_END */

/* NEXUS_INSTRUCTOR_VIDEOAULAS_STUDENT_PARITY_V1_R34_R1_START */
#instructor-shared-dashboard.instructor-videoaulas-student-parity-r34-r1 {
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
}

#instructor-shared-dashboard
.instructor-student-course-grid-r34-r1 {
    display: grid !important;
    grid-template-columns:
        repeat(auto-fill, minmax(360px, 430px)) !important;
    justify-content: start !important;
    align-items: stretch !important;
    gap: 26px !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-top: 26px !important;
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1 {
    display: flex;
    flex-direction: column;
    width: 100% !important;
    min-width: 0 !important;
    overflow: hidden;
    color: #f5f8ff;
    background:
        linear-gradient(
            165deg,
            rgba(17, 32, 58, 0.98),
            rgba(10, 22, 42, 0.98)
        );
    border: 1px solid rgba(87, 128, 255, 0.42);
    border-radius: 20px;
    box-shadow:
        0 0 34px rgba(48, 91, 228, 0.12),
        0 24px 58px rgba(0, 0, 0, 0.32);
    transition:
        transform 180ms ease,
        border-color 180ms ease,
        box-shadow 180ms ease;
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1:hover {
    transform: translateY(-5px);
    border-color: rgba(99, 145, 255, 0.58);
    box-shadow:
        0 0 42px rgba(48, 91, 228, 0.17),
        0 28px 64px rgba(0, 0, 0, 0.38);
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.student-modern-course-cover {
    position: relative;
    width: 100% !important;
    aspect-ratio: 16 / 9 !important;
    overflow: hidden;
    background:
        linear-gradient(135deg, #07162f, #315cff);
    border-bottom: 1px solid rgba(112, 142, 202, 0.14);
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.student-modern-course-cover img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover;
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.student-modern-cover-placeholder {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.student-modern-play-symbol {
    display: grid;
    place-items: center;
    width: 70px;
    height: 70px;
    padding-left: 4px;
    color: #315cff;
    font-size: 26px;
    background: #ffffff;
    border-radius: 50%;
    box-shadow: 0 14px 35px rgba(0, 0, 0, 0.3);
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.student-modern-cover-overlay {
    position: absolute;
    inset: auto 0 0;
    padding: 40px 22px 17px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.1em;
    background:
        linear-gradient(
            transparent,
            rgba(2, 9, 25, 0.92)
        );
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.student-modern-course-body {
    display: flex;
    flex: 1;
    flex-direction: column;
    min-width: 0;
    padding: 24px;
    background:
        linear-gradient(
            180deg,
            rgba(17, 31, 56, 0.99),
            rgba(10, 22, 41, 0.99)
        );
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.student-modern-course-label {
    color: #77a0ff;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.13em;
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.student-modern-course-body h2 {
    margin: 9px 0 12px;
    color: #f7f9fd;
    font-size: 22px;
    line-height: 1.28;
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.student-modern-course-body p {
    display: -webkit-box;
    min-height: 67px;
    margin: 0;
    overflow: hidden;
    color: #95a8c6;
    font-size: 14px;
    line-height: 1.58;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.student-modern-course-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin: 20px 0;
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.student-modern-course-meta span {
    padding: 7px 11px;
    color: #b9c7dc;
    font-size: 12px;
    font-weight: 750;
    background: rgba(84, 111, 166, 0.18);
    border: 1px solid rgba(124, 149, 201, 0.14);
    border-radius: 999px;
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.instructor-modern-open-course {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
    min-height: 47px;
    margin-top: auto;
    color: #ffffff;
    background:
        linear-gradient(
            120deg,
            #3672ff,
            #3158f4 58%,
            #5b48e8
        );
    border: 1px solid rgba(142, 176, 255, 0.38);
    border-radius: 10px;
    box-shadow:
        0 12px 28px rgba(44, 82, 220, 0.35),
        0 0 24px rgba(57, 101, 255, 0.16);
    cursor: pointer;
}

#instructor-shared-dashboard
.instructor-course-card-r34-r1
.instructor-modern-open-course:hover:not(:disabled) {
    filter: brightness(1.08);
    transform: translateY(-1px);
}

#instructor-shared-dashboard
.instructor-videoaulas-empty-r34-r1 {
    grid-column: 1 / -1;
}

@media (max-width: 760px) {
    #instructor-shared-dashboard
    .instructor-student-course-grid-r34-r1 {
        grid-template-columns:
            minmax(0, 1fr) !important;
    }
}
/* NEXUS_INSTRUCTOR_VIDEOAULAS_STUDENT_PARITY_V1_R34_R1_END */

/* NEXUS_FLASHCARDS_SHARED_GRID_FLUID_V1_START */
.admin-flashcards-shared-section,
#admin-flashcards-shared-page {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    min-width: 0;
    justify-self: stretch;
}

#admin-flashcards-shared-page > .flashcards-factory-grid,
.admin-flashcards-shared-section .flashcards-factory-grid {
    display: grid;
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    min-width: 0;
    grid-template-columns: repeat(auto-fit, minmax(320px, 360px));
    column-gap: 24px;
    row-gap: 28px;
    align-items: start;
    justify-content: space-between;
}

@media (max-width: 720px) {
    #admin-flashcards-shared-page > .flashcards-factory-grid,
    .admin-flashcards-shared-section .flashcards-factory-grid {
        grid-template-columns: minmax(0, 1fr);
        justify-content: stretch;
    }
}
/* NEXUS_FLASHCARDS_SHARED_GRID_FLUID_V1_END */
/* NEXUS_FLASHCARDS_CREATE_DIALOG_V1_START */
.flashcards-factory-dialog{position:fixed;inset:0;z-index:70000;display:flex;align-items:flex-start;justify-content:center;overflow:auto;padding:max(24px,10vh) 16px 24px;box-sizing:border-box;background:rgba(3,8,18,.74);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}
.flashcards-factory-dialog .flashcards-factory-create{width:min(760px,100%);margin:0;background:#0d1a2f;box-shadow:0 26px 80px rgba(0,0,0,.6)}
.flashcards-factory-create .ffc-field{display:grid;gap:8px;min-width:0;align-content:start}
.flashcards-factory-create .ffc-field>label{font-weight:700}
.ffc-combo{position:relative;min-width:0}
.ffc-list{position:absolute;z-index:6;left:0;right:0;top:calc(100% + 6px);max-height:252px;overflow:auto;margin:0;padding:6px;list-style:none;box-sizing:border-box;border:1px solid rgba(100,145,230,.36);border-radius:14px;background:#0a1629;box-shadow:0 20px 44px rgba(0,0,0,.6)}
.ffc-list[hidden]{display:none}
.ffc-head{padding:6px 10px 4px;color:#7f93b3;font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.ffc-empty{padding:10px;color:#93a4bd;font-size:.88rem}
.ffc-opt{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border-radius:10px;color:#e6eefc;font-weight:600;cursor:pointer}
.ffc-list .ffc-opt>span{min-width:0;overflow-wrap:anywhere;color:inherit;font-size:inherit;font-weight:inherit;letter-spacing:normal}
.ffc-opt small{flex:none;color:#8fa3c4;font-weight:600;white-space:nowrap}
.ffc-opt b{color:#7db0ff}
.ffc-opt:hover,.ffc-opt.is-active{background:rgba(59,100,180,.36)}
.ffc-opt.ffc-new{margin-top:4px;border-top:1px solid rgba(148,163,184,.16);border-radius:0 0 10px 10px;color:#9ec2ff}
.flashcards-factory-create footer button:not(.primary){border:1px solid rgba(148,163,184,.3);border-radius:11px;padding:10px 15px;background:transparent;color:#cbd5e1;font-weight:700;cursor:pointer}
.flashcards-factory-create footer button:not(.primary):hover{background:rgba(148,163,184,.12)}
@media(max-width:720px){.flashcards-factory-dialog{padding-top:16px}}
/* NEXUS_FLASHCARDS_CREATE_DIALOG_V1_END */
