/* 21 Creativo: aula y catálogo de cursos (Tutor LMS y compatibles).
   Reutiliza los tokens del tema, así sigue el modo oscuro y claro. */

/* Variables del plugin ligadas a los tokens del tema */
:root,[data-theme]{
  --tutor-color-primary:var(--accent);
  --tutor-color-primary-hover:var(--accent-hover);
  --tutor-body-color:var(--text);
  --tutor-color-white:var(--bg-2);
  --tutor-color-black:var(--text);
  --tutor-border-color:var(--line);
  --tutor-color-gray-border:var(--line);
  --tutor-color-gray:var(--bg-3);
  --tutor-color-muted:var(--muted);
  --tutor-color-secondary:var(--muted);
}

/* Lienzo y tipografía */
.tutor-wrap,.tutor-dashboard,.tutor-course-details-page,.tutor-page-wrap,.tutor-course-filter-wrapper,
.learndash-wrapper,.llms-container,.lp-content-area,.sensei-course-theme{font-family:var(--font);color:var(--text)}
.tutor-wrap,.tutor-page-wrap,.tutor-course-details-page,.tutor-dashboard,.tutor-container{background:transparent}
.tutor-container,.tutor-course-details-page .tutor-container{max-width:calc(var(--maxw) + var(--pad)*2);padding-inline:var(--pad)}
.tutor-course-details-page,.tutor-dashboard,.tutor-course-archive-page,.tutor-page-wrap{padding-top:clamp(24px,4vw,56px);padding-bottom:clamp(56px,8vw,110px)}

/* Títulos con el display del sitio */
.tutor-course-details-title,.tutor-course-name,.tutor-course-header-h1,.tutor-dashboard-content h1,.tutor-dashboard-content h2,
.tutor-course-details-page h1,.tutor-course-details-page h2,.tutor-course-details-page h3,.tutor-fs-3,.tutor-fs-4,
.entry-title.tutor-course-details-title,.llms-loop-title,.lp-course-title{font-family:var(--display);font-weight:400;text-transform:uppercase;letter-spacing:.01em;line-height:1.02;color:var(--text)}
.tutor-course-details-title,.tutor-course-header-h1,.tutor-course-details-page h1{font-size:clamp(2.25rem,5vw,4rem)}
.tutor-course-details-page h2,.tutor-fs-3{font-size:clamp(1.6rem,3vw,2.25rem)}
.tutor-course-name{font-size:1.4rem}
.tutor-course-name a,.tutor-course-details-title a{color:inherit;text-decoration:none}
.tutor-course-name a:hover{color:var(--accent-text)}
.tutor-fs-6,.tutor-fs-7,.tutor-fs-8,.tutor-meta,.tutor-meta-key,.tutor-course-details-info{font-family:var(--font)}
.tutor-meta-key,.tutor-course-details-info .tutor-meta-key{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;font-size:.72rem;color:var(--brass)}
.tutor-color-secondary,.tutor-color-muted,.tutor-color-black-60{color:var(--muted)!important}
.tutor-color-black,.tutor-color-text-primary{color:var(--text)!important}
.tutor-color-primary{color:var(--accent-text)!important}

/* Superficies: tarjetas, paneles, listas */
.tutor-card,.tutor-course-card,.tutor-accordion-item,.tutor-dashboard-content-inner .tutor-card,.tutor-sidebar-card,
.tutor-course-sidebar-card,.tutor-quiz-attempt-info,.tutor-modal-content,.tutor-dashboard-permalinks,
.tutor-course-details-widget,.tutor-ratings-review-card,.tutor-table-responsive{
  background:var(--bg-2)!important;color:var(--text);border:1px solid var(--line)!important;border-radius:var(--r-surface)!important;box-shadow:none!important}
.tutor-card-body,.tutor-card-footer{background:transparent!important;border-color:var(--line)!important}
.tutor-bg-white,.tutor-bg-light,.tutor-bg-gray-10{background:var(--bg-2)!important}
.tutor-border,.tutor-border-top,.tutor-border-bottom,.tutor-divider,.tutor-hr{border-color:var(--line)!important}
.tutor-course-card{overflow:hidden;transition:transform .4s var(--ease),border-color .3s}
.tutor-course-card:hover{transform:translateY(-3px);border-color:var(--accent)!important}
.tutor-course-thumbnail,.tutor-course-thumbnail img{border-radius:0!important;filter:sepia(.18) saturate(1.05) contrast(1.03)}
.tutor-course-listing-grid{gap:clamp(14px,2vw,24px)}

/* Botones: píldora, acento del sitio */
.tutor-btn,.tutor-btn-primary,.tutor-btn-outline-primary,.tutor-btn-secondary,.tutor-btn-ghost,
.llms-button-action,.llms-button-secondary,.lp-button,.learndash-wrapper .ld-button,.sensei-course-theme .wp-block-button__link{
  font-family:var(--font);font-weight:600;border-radius:var(--r-pill)!important;min-height:46px;padding-inline:26px;letter-spacing:0;text-transform:none;box-shadow:none!important;transition:transform .2s var(--ease),background .2s,border-color .2s,color .2s}
.tutor-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;text-decoration:none!important}
.tutor-btn:active{transform:translateY(1px) scale(.98)}
.tutor-btn-primary,.llms-button-action,.lp-button,.learndash-wrapper .ld-button:not(.ld-button-transparent){background:var(--accent)!important;border-color:var(--accent)!important;color:var(--on-accent)!important}
.tutor-btn-primary:hover,.llms-button-action:hover,.lp-button:hover{background:var(--accent-hover)!important;border-color:var(--accent-hover)!important;color:var(--on-accent)!important}
.tutor-btn-outline-primary,.tutor-btn-secondary,.tutor-btn-ghost,.llms-button-secondary{background:transparent!important;border:1px solid var(--line)!important;color:var(--text)!important}
.tutor-btn-outline-primary:hover,.tutor-btn-secondary:hover,.tutor-btn-ghost:hover,.llms-button-secondary:hover{border-color:var(--text)!important;background:transparent!important;color:var(--text)!important}
.tutor-btn.is-disabled,.tutor-btn:disabled{opacity:.45}

/* Campos de formulario */
.tutor-form-control,.tutor-form-select,.tutor-form-label+input,.tutor-wrap input[type="text"],.tutor-wrap input[type="email"],
.tutor-wrap input[type="password"],.tutor-wrap input[type="number"],.tutor-wrap select,.tutor-wrap textarea,.llms-field input,.llms-field select{
  background:var(--bg)!important;color:var(--text)!important;border:1px solid var(--line)!important;border-radius:var(--r-field)!important;min-height:48px;box-shadow:none!important}
.tutor-wrap textarea{min-height:130px}
.tutor-form-control:focus,.tutor-wrap input:focus,.tutor-wrap select:focus,.tutor-wrap textarea:focus{border-color:var(--accent)!important;outline:2px solid color-mix(in srgb,var(--accent) 35%,transparent);outline-offset:1px}
.tutor-form-label,.tutor-form-check label{color:var(--text);font-weight:500}
.tutor-form-check-input:checked{background-color:var(--accent);border-color:var(--accent)}

/* Temario (acordeón) */
.tutor-accordion-item{margin-bottom:10px;overflow:hidden}
.tutor-accordion-item-header{background:transparent!important;color:var(--text)!important;font-family:var(--display);font-size:1.2rem;text-transform:uppercase;letter-spacing:.02em;padding:18px 22px}
.tutor-accordion-item-header.is-active{color:var(--accent-text)!important}
.tutor-accordion-item-body-content,.tutor-course-content-list-item{background:transparent;color:var(--muted)}
.tutor-course-content-list-item{border-color:var(--line)!important}
.tutor-course-content-list-item-title a{color:var(--text);text-decoration:none}
.tutor-course-content-list-item-title a:hover{color:var(--accent-text)}
.tutor-icon-circle-mark-line,.tutor-icon-bullet-point{color:var(--brass)}

/* Pestañas y menú del panel */
.tutor-nav,.tutor-nav-tabs{border-color:var(--line)!important}
.tutor-nav-link{color:var(--muted)!important;font-weight:500;border-radius:0!important}
.tutor-nav-link:hover{color:var(--text)!important}
.tutor-nav-link.is-active{color:var(--text)!important;border-color:var(--accent)!important;box-shadow:inset 0 -2px 0 var(--accent)}
.tutor-dashboard-permalinks{padding:8px!important}
.tutor-dashboard-menu-item-link{color:var(--muted)!important;border-radius:12px!important;font-weight:500}
.tutor-dashboard-menu-item-link:hover{color:var(--text)!important;background:var(--bg-3)!important}
.tutor-dashboard-menu-item.active .tutor-dashboard-menu-item-link,.tutor-dashboard-menu-item-link.is-active{color:var(--on-accent)!important;background:var(--accent)!important}
.tutor-dashboard-header-username,.tutor-dashboard .tutor-fs-5{font-family:var(--display);text-transform:uppercase;letter-spacing:.02em;font-weight:400}

/* Progreso y valoraciones */
.tutor-progress-bar{background:var(--bg-3)!important;border-radius:var(--r-pill);height:8px}
.tutor-progress-value{background:var(--accent)!important;border-radius:var(--r-pill)}
.tutor-ratings-stars,.tutor-ratings .tutor-icon-star-bold,.tutor-icon-star-bold,.tutor-icon-star-line{color:var(--brass)!important}
.tutor-badge,.tutor-course-badge,.tutor-course-price-badge,.tutor-badge-label{background:var(--accent)!important;color:var(--on-accent)!important;border-radius:var(--r-pill)!important;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem}
.tutor-course-price,.tutor-course-details-price .price,.tutor-course-sidebar-card .price{font-family:var(--display);font-size:2rem;color:var(--text)}
.tutor-course-price del{color:var(--muted)}

/* Barra lateral del curso */
.tutor-course-sidebar-card{padding:clamp(18px,2vw,26px)}
.tutor-course-details-widget-title{font-family:var(--display);text-transform:uppercase;font-weight:400;letter-spacing:.02em;font-size:1.3rem}
.tutor-course-single-sidebar-wrapper{position:sticky;top:calc(var(--header-h) + 18px)}

/* Aula (modo lección): misma paleta, sin distracciones */
.tutor-course-single-content-wrapper,.tutor-course-single-sidebar-wrapper,.tutor-spotlight-mode,
.tutor-course-topic-single-header,.tutor-lesson-wrapper,.tutor-quiz-wrapper{background:var(--bg)!important;color:var(--text)}
.tutor-course-single-sidebar-wrapper,.tutor-course-topic-single-header{border-color:var(--line)!important}
.tutor-course-topic-single-header{border-bottom:1px solid var(--line)}
.tutor-spotlight-mode .tutor-course-single-sidebar-wrapper{background:var(--bg-2)!important}
.tutor-lesson-content-area,.tutor-lesson-wrapper .tutor-fs-6,.tutor-lesson-wrapper p{color:var(--text)}
.tutor-quiz-wrapper .tutor-card,.tutor-quiz-question-wrap{background:var(--bg-2)!important}
.tutor-video-player,.tutor-video-player video,.tutor-video-player iframe{border-radius:var(--r-surface);overflow:hidden}

/* Tablas, avisos y modales */
.tutor-table,.tutor-table th,.tutor-table td{color:var(--text);border-color:var(--line)!important;background:transparent!important}
.tutor-table th{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;color:var(--brass)}
.tutor-alert,.tutor-notice,.tutor-toast-message{background:var(--bg-2)!important;color:var(--text)!important;border:1px solid var(--line)!important;border-radius:var(--r-field)!important}
.tutor-modal-overlay{background:rgba(10,6,5,.8)!important}
.tutor-modal-content{padding:clamp(18px,3vw,32px)}

/* Enlaces */
.tutor-wrap a:not(.tutor-btn):not(.tutor-nav-link):not(.tutor-dashboard-menu-item-link){text-decoration-thickness:1px;text-underline-offset:.2em}
.tutor-wrap a:not(.tutor-btn):hover{color:var(--accent-text)}

/* Otros LMS: ajustes mínimos de paleta */
.learndash-wrapper .ld-item-list-item,.llms-loop-item,.lp-course-item{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-surface);color:var(--text)}
.learndash-wrapper .ld-progress-bar .ld-progress-bar-percentage,.llms-progress .progress-bar-complete{background:var(--accent)}

@media (max-width:900px){.tutor-course-single-sidebar-wrapper{position:static}}
@media (prefers-reduced-motion:reduce){.tutor-course-card,.tutor-btn{transition:none}}
