/* Start custom CSS *//* ============================================================
   PAINEL TUTOR LMS — DESIGN PREMIUM EAD
   Base visual: padrão premium do checkout
   Ambiente: TutorStarter + Elementor + Tutor LMS + WooCommerce
   Aplicação: Aparência > CSS adicional ou Elementor > Custom CSS
   Escopo: apenas página do painel do aluno
   ============================================================ */

/* ── VARIÁVEIS GLOBAIS ─────────────────────────────────────── */
body.tutor-screen-frontend-dashboard {
  --pd-primary:        #930714;
  --pd-primary-dark:   #720510;
  --pd-primary-light:  #fdf0f1;
  --pd-success:        #10b981;
  --pd-warning:        #f59e0b;
  --pd-text:           #2d2d2d;
  --pd-title:          #3a2020;
  --pd-muted:          #7a6b6b;
  --pd-border:         #e8e2e2;
  --pd-bg:             #f5f3f3;
  --pd-white:          #ffffff;
  --pd-shadow:         0 1px 4px rgba(0,0,0,.06), 0 6px 20px rgba(0,0,0,.05);
  --pd-shadow-soft:    0 10px 30px rgba(147,7,20,.08);
  --pd-shadow-focus:   0 0 0 3px rgba(147,7,20,.16);
  --pd-radius:         18px;
  --pd-radius-sm:      10px;
  --pd-font:           'Inter', 'Segoe UI', sans-serif;
  --pd-heading:        'Sora', 'Inter', sans-serif;
  --pd-ease:           .2s cubic-bezier(.4,0,.2,1);
}

/* ══════════════════════════════════════════════════════════════
   1. ESCOPO BASE DO PAINEL
   ══════════════════════════════════════════════════════════════ */
body.tutor-screen-frontend-dashboard {
  background: var(--pd-bg) !important;
}

body.tutor-screen-frontend-dashboard .tutor-wrap.tutor-dashboard {
  background:
    radial-gradient(circle at top left, rgba(147,7,20,.05), transparent 28%),
    linear-gradient(180deg, #fbf9f9 0%, #f5f3f3 100%) !important;
  padding-top: 2rem !important;
  padding-bottom: 4rem !important;
  font-family: var(--pd-font) !important;
}

body.tutor-screen-frontend-dashboard .tutor-container {
  max-width: 1400px !important;
}

/* ══════════════════════════════════════════════════════════════
   2. CABEÇALHO DO PAINEL
   ══════════════════════════════════════════════════════════════ */
body.tutor-screen-frontend-dashboard .tutor-frontend-dashboard-header {
  background: var(--pd-white) !important;
  border: 1px solid var(--pd-border) !important;
  border-radius: var(--pd-radius) !important;
  padding: 1.5rem 1.75rem !important;
  margin-bottom: 2rem !important;
  box-shadow: var(--pd-shadow) !important;
  align-items: center !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-header-avatar .tutor-avatar {
  background: linear-gradient(135deg, var(--pd-primary) 0%, var(--pd-primary-dark) 100%) !important;
  color: var(--pd-white) !important;
  box-shadow: 0 10px 24px rgba(147,7,20,.22) !important;
}

body.tutor-screen-frontend-dashboard .tutor-avatar-text {
  font-family: var(--pd-heading) !important;
  font-weight: 700 !important;
  letter-spacing: .03em !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-header-greetings {
  font-family: var(--pd-font) !important;
  color: var(--pd-muted) !important;
  font-size: .95rem !important;
  margin-bottom: .2rem !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-header-username {
  font-family: var(--pd-heading) !important;
  color: var(--pd-title) !important;
  font-size: 1.55rem !important;
  line-height: 1.2 !important;
  letter-spacing: -.02em !important;
}

body.tutor-screen-frontend-dashboard .tutor-header-right-side > div {
  background: var(--pd-primary-light) !important;
  border: 1px solid rgba(147,7,20,.14) !important;
  border-radius: 999px !important;
  padding: .8rem 1rem !important;
}

body.tutor-screen-frontend-dashboard .tutor-header-right-side span {
  color: #6b0410 !important;
  font-family: var(--pd-font) !important;
  line-height: 1.45 !important;
}

body.tutor-screen-frontend-dashboard .tutor-header-right-side b {
  color: var(--pd-primary) !important;
}

/* ══════════════════════════════════════════════════════════════
   3. LAYOUT PRINCIPAL
   ══════════════════════════════════════════════════════════════ */
body.tutor-screen-frontend-dashboard .tutor-frontend-dashboard-maincontent {
  align-items: start !important;
  gap: 1.75rem 0 !important;
}

/* ══════════════════════════════════════════════════════════════
   4. MENU LATERAL
   ══════════════════════════════════════════════════════════════ */
body.tutor-screen-frontend-dashboard .tutor-dashboard-left-menu {
  position: sticky !important;
  top: 1.5rem !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-permalinks {
  background: var(--pd-white) !important;
  border: 1px solid var(--pd-border) !important;
  border-radius: var(--pd-radius) !important;
  padding: 1rem !important;
  box-shadow: var(--pd-shadow) !important;
  overflow: hidden !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-menu-item {
  margin-bottom: .35rem !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-menu-item:last-child {
  margin-bottom: 0 !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-menu-item-link {
  display: flex !important;
  align-items: center !important;
  gap: .8rem !important;
  min-height: 50px !important;
  padding: .9rem 1rem !important;
  border-radius: 12px !important;
  color: var(--pd-text) !important;
  font-family: var(--pd-font) !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: background var(--pd-ease), color var(--pd-ease), transform var(--pd-ease), box-shadow var(--pd-ease) !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-menu-item-link:hover {
  background: #faf7f7 !important;
  color: var(--pd-primary) !important;
  transform: translateX(2px) !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-menu-item.active .tutor-dashboard-menu-item-link {
  background: linear-gradient(135deg, var(--pd-primary) 0%, var(--pd-primary-dark) 100%) !important;
  color: var(--pd-white) !important;
  box-shadow: 0 10px 24px rgba(147,7,20,.18) !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-menu-item.active .tutor-dashboard-menu-item-icon,
body.tutor-screen-frontend-dashboard .tutor-dashboard-menu-item.active .tutor-dashboard-menu-item-text {
  color: var(--pd-white) !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-menu-item-icon {
  font-size: 1rem !important;
  color: var(--pd-primary) !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-menu-divider {
  margin: .85rem 0 !important;
  border-color: var(--pd-border) !important;
}

/* ══════════════════════════════════════════════════════════════
   5. ÁREA DE CONTEÚDO
   ══════════════════════════════════════════════════════════════ */
body.tutor-screen-frontend-dashboard .tutor-dashboard-content {
  min-width: 0 !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-title,
body.tutor-screen-frontend-dashboard .tutor-frontend-dashboard-course-progress > .tutor-fs-5 {
  font-family: var(--pd-heading) !important;
  color: var(--pd-title) !important;
  font-weight: 700 !important;
  letter-spacing: -.02em !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-title {
  font-size: 1.9rem !important;
  margin-bottom: 1.4rem !important;
  position: relative !important;
  padding-left: 1rem !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-title::before {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  top: .2em !important;
  width: 5px !important;
  height: 1.1em !important;
  border-radius: 999px !important;
  background: var(--pd-primary) !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-content-inner {
  margin-bottom: 2rem !important;
}

/* ══════════════════════════════════════════════════════════════
   6. CARDS DE ESTATÍSTICA
   ══════════════════════════════════════════════════════════════ */
body.tutor-screen-frontend-dashboard .tutor-card {
  background: var(--pd-white) !important;
  border: 1px solid var(--pd-border) !important;
  border-radius: var(--pd-radius) !important;
  box-shadow: var(--pd-shadow) !important;
  overflow: hidden !important;
  transition: transform var(--pd-ease), box-shadow var(--pd-ease), border-color var(--pd-ease) !important;
}

body.tutor-screen-frontend-dashboard .tutor-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: var(--pd-shadow-soft) !important;
  border-color: rgba(147,7,20,.18) !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-content-inner .tutor-card > div {
  min-height: 168px !important;
  justify-content: center !important;
  gap: .65rem !important;
}

body.tutor-screen-frontend-dashboard .tutor-round-box {
  width: 62px !important;
  height: 62px !important;
  border-radius: 16px !important;
  background: linear-gradient(135deg, var(--pd-primary-light) 0%, #fff 100%) !important;
  color: var(--pd-primary) !important;
  border: 1px solid rgba(147,7,20,.12) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9) !important;
}

body.tutor-screen-frontend-dashboard .tutor-round-box i {
  font-size: 1.4rem !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-content-inner .tutor-fs-3,
body.tutor-screen-frontend-dashboard .tutor-dashboard-content-inner .tutor-fs-4 {
  font-family: var(--pd-heading) !important;
  font-weight: 800 !important;
  color: var(--pd-title) !important;
  letter-spacing: -.03em !important;
}

body.tutor-screen-frontend-dashboard .tutor-dashboard-content-inner .tutor-color-secondary {
  color: var(--pd-muted) !important;
  font-family: var(--pd-font) !important;
  font-weight: 600 !important;
}

/* ══════════════════════════════════════════════════════════════
   7. BLOCO DE PROGRESSO DOS CURSOS
   ══════════════════════════════════════════════════════════════ */
body.tutor-screen-frontend-dashboard .tutor-frontend-dashboard-course-progress {
  margin-top: .5rem !important;
}

body.tutor-screen-frontend-dashboard .tutor-course-progress-item {
  border-radius: var(--pd-radius) !important;
  overflow: hidden !important;
}

body.tutor-screen-frontend-dashboard .tutor-course-progress-item .tutor-ratio {
  background: #f1eded !important;
}

body.tutor-screen-frontend-dashboard .tutor-card-image-left {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

body.tutor-screen-frontend-dashboard .tutor-course-progress-item .tutor-card-body {
  padding: 1.6rem 1.7rem !important;
}

body.tutor-screen-frontend-dashboard .tutor-course-progress-item-title {
  font-family: var(--pd-heading) !important;
  color: var(--pd-title) !important;
  font-size: 1.2rem !important;
  line-height: 1.35 !important;
  letter-spacing: -.02em !important;
}

body.tutor-screen-frontend-dashboard .tutor-color-muted {
  color: var(--pd-muted) !important;
}

body.tutor-screen-frontend-dashboard .tutor-color-black {
  color: var(--pd-title) !important;
}

body.tutor-screen-frontend-dashboard .tutor-ratings-stars i {
  color: #d7caca !important;
}

body.tutor-screen-frontend-dashboard .tutor-ratings-count {
  color: var(--pd-muted) !important;
  font-size: .84rem !important;
}

body.tutor-screen-frontend-dashboard .tutor-progress-bar {
  height: 10px !important;
  border-radius: 999px !important;
  background: #efe8e8 !important;
  overflow: hidden !important;
}

body.tutor-screen-frontend-dashboard .tutor-progress-value {
  background: linear-gradient(90deg, var(--pd-primary) 0%, #bf1b2b 100%) !important;
  border-radius: 999px !important;
}

body.tutor-screen-frontend-dashboard .progress-percentage {
  white-space: nowrap !important;
}

/* ══════════════════════════════════════════════════════════════
   8. LINKS, BOTÕES E ACESSIBILIDADE
   ══════════════════════════════════════════════════════════════ */
body.tutor-screen-frontend-dashboard a {
  transition: color var(--pd-ease), opacity var(--pd-ease) !important;
}

body.tutor-screen-frontend-dashboard a:hover {
  opacity: .96 !important;
}

body.tutor-screen-frontend-dashboard a:focus-visible,
body.tutor-screen-frontend-dashboard button:focus-visible {
  outline: none !important;
  box-shadow: var(--pd-shadow-focus) !important;
  border-radius: 10px !important;
}

/* ══════════════════════════════════════════════════════════════
   9. FOOTER MOBILE DO TUTOR
   ══════════════════════════════════════════════════════════════ */
body.tutor-screen-frontend-dashboard #tutor-dashboard-footer-mobile {
  background: rgba(255,255,255,.96) !important;
  backdrop-filter: blur(14px) !important;
  border-top: 1px solid var(--pd-border) !important;
  box-shadow: 0 -8px 24px rgba(0,0,0,.06) !important;
}

body.tutor-screen-frontend-dashboard #tutor-dashboard-footer-mobile a {
  color: var(--pd-muted) !important;
  font-family: var(--pd-font) !important;
  font-weight: 600 !important;
}

body.tutor-screen-frontend-dashboard #tutor-dashboard-footer-mobile a:hover,
body.tutor-screen-frontend-dashboard #tutor-dashboard-footer-mobile a:focus {
  color: var(--pd-primary) !important;
}

/* ══════════════════════════════════════════════════════════════
   10. RESPONSIVO — TABLET
   ══════════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
  body.tutor-screen-frontend-dashboard .tutor-wrap.tutor-dashboard {
    padding-top: 1.5rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-frontend-dashboard-header {
    padding: 1.25rem !important;
    border-radius: 14px !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-header-username {
    font-size: 1.35rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-left-menu {
    position: static !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-permalinks {
    border-radius: 14px !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-title {
    font-size: 1.6rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-content-inner .tutor-card > div {
    min-height: 150px !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-course-progress-item .tutor-card-body {
    padding: 1.3rem !important;
  }
}

/* ══════════════════════════════════════════════════════════════
   11. RESPONSIVO — MOBILE
   ══════════════════════════════════════════════════════════════ */
@media (max-width: 767px) {
  body.tutor-screen-frontend-dashboard .tutor-wrap.tutor-dashboard {
    padding-top: 1rem !important;
    padding-bottom: 5.5rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-frontend-dashboard-header {
    padding: 1rem !important;
    margin-bottom: 1.25rem !important;
    border-radius: 12px !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-header-left-side {
    align-items: center !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-header-avatar .tutor-avatar {
    width: 56px !important;
    height: 56px !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-user-info {
    margin-left: .85rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-header-greetings {
    font-size: .82rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-header-username {
    font-size: 1.1rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-header-right-side > div {
    width: 100% !important;
    border-radius: 12px !important;
    padding: .75rem .9rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-header-right-side span {
    font-size: .82rem !important;
    display: block !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-permalinks {
    padding: .75rem !important;
    border-radius: 12px !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-menu-item-link {
    min-height: 46px !important;
    padding: .8rem .85rem !important;
    font-size: .9rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-title,
  body.tutor-screen-frontend-dashboard .tutor-frontend-dashboard-course-progress > .tutor-fs-5 {
    font-size: 1.2rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-title {
    margin-bottom: 1rem !important;
    padding-left: .8rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-content-inner .tutor-card {
    border-radius: 14px !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-content-inner .tutor-card > div {
    min-height: auto !important;
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
    gap: .4rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-round-box {
    width: 52px !important;
    height: 52px !important;
    border-radius: 14px !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-content-inner .tutor-fs-3,
  body.tutor-screen-frontend-dashboard .tutor-dashboard-content-inner .tutor-fs-4 {
    font-size: 1.3rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-course-progress-item {
    border-radius: 14px !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-course-progress-item-title {
    font-size: 1rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-course-progress-item .tutor-card-body {
    padding: 1rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-d-flex.tutor-fs-7.tutor-mb-32 {
    margin-bottom: 1rem !important;
    flex-wrap: wrap !important;
    gap: .2rem !important;
  }
}

/* ══════════════════════════════════════════════════════════════
   12. MOBILE PEQUENO
   ══════════════════════════════════════════════════════════════ */
@media (max-width: 420px) {
  body.tutor-screen-frontend-dashboard .tutor-frontend-dashboard-header {
    padding: .875rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-header-username {
    font-size: .98rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-menu-item-link {
    font-size: .85rem !important;
    padding: .72rem .75rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-dashboard-title,
  body.tutor-screen-frontend-dashboard .tutor-frontend-dashboard-course-progress > .tutor-fs-5 {
    font-size: 1.05rem !important;
  }

  body.tutor-screen-frontend-dashboard .tutor-course-progress-item-title {
    font-size: .92rem !important;
  }

  body.tutor-screen-frontend-dashboard .progress-percentage {
    font-size: .76rem !important;
  }
}/* End custom CSS */