/*
 * PAGE THEME: Curso PHP — slate paper + PHP violet accent
 * Playlist PLezsbUDiwcpkqdkx4zorwO26-neh6mykX
 */
.theme-playlist-php {
  --primary-color: #5c4d9d;
  --primary-color-hover: #4a3d82;
  --primary-color-rgb: 92, 77, 157;
  --pl-surface: #ffffff;
  --pl-surface-muted: #f8fafc;
  --pl-ink: #0f172a;
  --pl-ink-soft: #475569;
  --pl-accent: #777bb4;
  --pl-accent-hot: #5b6cbc;
  --pl-border: rgba(15, 23, 42, 0.1);
  --pl-border-accent: rgba(119, 123, 180, 0.45);
}

.theme-playlist-php,
.theme-playlist-php * {
  --primary-color: #5c4d9d;
  --primary-color-hover: #4a3d82;
  --primary-color-rgb: 92, 77, 157;
}

.theme-playlist-php {
  background-color: #f1f5f9 !important;
  background-image: linear-gradient(165deg, rgba(241, 245, 249, 0.92) 0%, rgba(232, 237, 245, 0.88) 45%, rgba(226, 232, 240, 0.85) 100%),
    url('/styles/themes/bg/php.jpg'), radial-gradient(circle at 82% 12%, rgba(119, 123, 180, 0.22) 0%, transparent 40%),
    linear-gradient(165deg, #f1f5f9 0%, #e8edf5 48%, #e2e8f0 100%) !important;
  background-size: 100% 100%, cover, 100% 100%, 100% 100%;
  background-position: center, center 22%, center, center;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  background-attachment: fixed, fixed, fixed, fixed;
  font-family: 'DM Sans', system-ui, sans-serif;
  color: var(--pl-ink);
  position: relative;
}

.theme-playlist-php app-top-header {
  background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
  border-bottom-color: var(--pl-border) !important;
}

.theme-playlist-php app-top-header .contact-info,
.theme-playlist-php app-top-header .contact-info a {
  color: var(--pl-ink-soft) !important;
}

.theme-playlist-php app-top-header .contact-info a:hover {
  color: var(--pl-ink) !important;
}

.theme-playlist-php app-top-header .social-icon {
  color: rgba(15, 23, 42, 0.45) !important;
}

.theme-playlist-php app-main-header .content {
  background-color: rgba(255, 255, 255, 0.97) !important;
  border-bottom-color: var(--pl-border) !important;
}

.theme-playlist-php app-main-header .content.sticky {
  box-shadow: 0 4px 24px rgba(15, 23, 42, 0.08) !important;
}

.theme-playlist-php app-main-header .content::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #4f46a8 0%, var(--pl-accent) 40%, var(--pl-accent-hot) 72%, #93a0d4 100%);
  pointer-events: none;
}

.theme-playlist-php app-main-header .logo span {
  color: var(--pl-ink) !important;
  font-family: 'Manrope', system-ui, sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: -0.04em;
}

.theme-playlist-php app-main-header .desktop-menu a {
  color: var(--pl-ink) !important;
  font-weight: 500;
}

.theme-playlist-php app-main-header .desktop-menu a:hover,
.theme-playlist-php app-main-header .desktop-menu a.active {
  color: var(--primary-color) !important;
}

.theme-playlist-php app-main-header .desktop-menu a.active::after {
  background-color: var(--pl-accent) !important;
}

.theme-playlist-php app-main-header .hamburger-button span {
  background-color: var(--pl-ink) !important;
}

.theme-playlist-php app-main-header .submenu {
  background: var(--pl-surface) !important;
  border-color: var(--pl-border) !important;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.12) !important;
}

.theme-playlist-php app-main-header .submenu a:hover {
  background: rgba(119, 123, 180, 0.09) !important;
  color: var(--primary-color) !important;
  border-left-color: var(--pl-accent) !important;
}

.theme-playlist-php app-main-header .submenu a.active {
  background: rgba(92, 77, 157, 0.07) !important;
  border-left-color: var(--pl-accent-hot) !important;
  color: #3d3470 !important;
}

.theme-playlist-php app-main-header .mobile-menu {
  background: var(--pl-surface-muted) !important;
}

.theme-playlist-php app-main-header .mobile-menu .submenu {
  background: #f1f5f9 !important;
}

.theme-playlist-php app-main-header .cart-menu-trigger {
  color: var(--pl-ink) !important;
}

.theme-playlist-php app-footer {
  background: linear-gradient(180deg, #1e293b 0%, #0f172a 100%) !important;
  border-top: 1px solid rgba(119, 123, 180, 0.35) !important;
}

.theme-playlist-php app-footer .container {
  color: rgba(226, 232, 240, 0.75) !important;
}

.theme-playlist-php app-footer a {
  color: #c7d2fe !important;
}

.theme-playlist-php app-footer a:hover {
  color: #ffffff !important;
}

/* ═══ Playlist detail component chrome (migrated from SCSS) ═══ */
@charset "UTF-8";
/* Curso PHP — slate paper, violet accent (PHP brand) */
.theme-playlist-php {
  font-family: "DM Sans", system-ui, sans-serif !important;
}
.theme-playlist-php .playlist-detail-page .detail-layout > .back-link {
  color: var(--primary-color, #5c4d9d) !important;
  font-weight: 600 !important;
  font-size: 0.9375rem !important;
  letter-spacing: 0.01em !important;
  margin-bottom: 12px !important;
}
.theme-playlist-php .playlist-detail-page .detail-layout > .back-link:hover {
  color: var(--primary-color-hover, #4a3d82) !important;
}
.theme-playlist-php .playlist-detail-page .playlist-header {
  position: relative !important;
  padding: 1.5rem 1.5rem 1.65rem 1.65rem !important;
  border-radius: 12px !important;
  background: var(--pl-surface, #ffffff) !important;
  border: 1px solid var(--pl-border, rgba(15, 23, 42, 0.1)) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8) inset, 0 12px 40px rgba(15, 23, 42, 0.06) !important;
  margin-bottom: 28px !important;
}
.theme-playlist-php .playlist-detail-page .playlist-header::before {
  content: "";
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 4px !important;
  border-radius: 12px 0 0 12px !important;
  background: linear-gradient(180deg, #4f46a8 0%, #777bb4 45%, #8b93c9 100%) !important;
}
.theme-playlist-php .playlist-detail-page .playlist-header h1 {
  font-family: "Manrope", system-ui, sans-serif !important;
  color: var(--pl-ink, #0f172a) !important;
  font-weight: 800 !important;
  font-size: 1.75rem !important;
  letter-spacing: -0.045em !important;
  line-height: 1.12 !important;
}
.theme-playlist-php .playlist-detail-page .playlist-header .playlist-description {
  color: var(--pl-ink-soft, #475569) !important;
  font-size: 0.96875rem !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
}
.theme-playlist-php .playlist-detail-page .video-wrapper {
  border-radius: 10px !important;
  overflow: hidden !important;
  box-shadow: 0 0 0 1px rgba(15, 23, 42, 0.06), 0 14px 40px rgba(15, 23, 42, 0.1) !important;
}
.theme-playlist-php .playlist-detail-page .episodes-title {
  color: var(--pl-ink, #0f172a) !important;
  font-family: "Manrope", system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 1.0625rem !important;
  letter-spacing: -0.03em !important;
  border-bottom: 2px solid rgba(119, 123, 180, 0.35) !important;
  padding-bottom: 0.4rem !important;
}
.theme-playlist-php .playlist-detail-page .episode-group {
  --playlist-episode-group-color: #334155;
  --playlist-episode-group-accent: #777bb4;
  --playlist-episode-group-subtitle-color: rgba(51, 65, 85, 0.75);
}
.theme-playlist-php .playlist-detail-page .episode-group__title {
  font-family: "Manrope", system-ui, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
}
.theme-playlist-php .playlist-detail-page .episode-group__subtitle {
  font-family: "DM Sans", system-ui, sans-serif !important;
  font-weight: 500 !important;
}
.theme-playlist-php .playlist-detail-page .episode {
  background: var(--pl-surface, #ffffff) !important;
  border: 1px solid var(--pl-border, rgba(15, 23, 42, 0.1)) !important;
  color: var(--pl-ink, #0f172a) !important;
  font-weight: 500 !important;
}
.theme-playlist-php .playlist-detail-page .episode:hover {
  background: #f8fafc !important;
  border-color: rgba(119, 123, 180, 0.35) !important;
}
.theme-playlist-php .playlist-detail-page .episode.current {
  background: linear-gradient(90deg, rgba(119, 123, 180, 0.12) 0%, rgba(255, 255, 255, 0.95) 100%) !important;
  border-color: rgba(92, 77, 157, 0.45) !important;
  font-weight: 600 !important;
  box-shadow: inset 3px 0 0 #777bb4 !important;
}
.theme-playlist-php .playlist-detail-page .episode .episode-num {
  color: #64748b !important;
  font-weight: 700 !important;
  font-variant-numeric: tabular-nums !important;
}
.theme-playlist-php .playlist-detail-page .episode.current .episode-num {
  color: #5c4d9d !important;
}
.theme-playlist-php .playlist-detail-page .episodes-column .episodes-list {
  scrollbar-width: thin !important;
  scrollbar-color: #94a3b8 #f1f5f9 !important;
}
.theme-playlist-php .playlist-detail-page .episodes-column .episodes-list::-webkit-scrollbar {
  width: 8px !important;
}
.theme-playlist-php .playlist-detail-page .episodes-column .episodes-list::-webkit-scrollbar-track {
  background: rgba(241, 245, 249, 0.95) !important;
  border-radius: 8px !important;
  margin: 4px 0 !important;
}
.theme-playlist-php .playlist-detail-page .episodes-column .episodes-list::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #cbd5e1 0%, #94a3b8 100%) !important;
  border-radius: 8px !important;
  border: 2px solid rgba(241, 245, 249, 0.95) !important;
}
.theme-playlist-php .playlist-detail-page .episodes-column .episodes-list::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #94a3b8 0%, #777bb4 100%) !important;
}
.theme-playlist-php .playlist-detail-page .current-video-description {
  position: relative !important;
  margin-top: 28px !important;
  padding: 1.5rem 1.5rem 1.65rem 1.65rem !important;
  border-radius: 12px !important;
  background: var(--pl-surface, #ffffff) !important;
  border: 1px solid var(--pl-border, rgba(15, 23, 42, 0.1)) !important;
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.85) inset, 0 12px 36px rgba(15, 23, 42, 0.06) !important;
  overflow: hidden !important;
}
.theme-playlist-php .playlist-detail-page .current-video-description::before {
  content: "";
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  bottom: 0 !important;
  width: 4px !important;
  border-radius: 12px 0 0 12px !important;
  background: linear-gradient(180deg, #4f46a8 0%, #777bb4 50%, #8b93c9 100%) !important;
}
.theme-playlist-php .playlist-detail-page .current-video-description__title {
  margin: 0 0 10px !important;
  font-family: "Manrope", system-ui, sans-serif !important;
  color: var(--pl-ink, #0f172a) !important;
  font-weight: 700 !important;
  font-size: 1.2rem !important;
  letter-spacing: -0.035em !important;
  line-height: 1.2 !important;
}
.theme-playlist-php .playlist-detail-page .current-video-description__body {
  margin: 0 !important;
  color: var(--pl-ink-soft, #475569) !important;
  font-size: 0.96875rem !important;
  line-height: 1.55 !important;
}
.theme-playlist-php .playlist-detail-page .current-video-description__toggle {
  color: var(--pl-ink-soft, #475569) !important;
}
.theme-playlist-php .playlist-detail-page.playlist-detail-page--fanwrap .playlist-header {
  background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.94) 0%, rgba(248, 250, 252, 0.9) 100%) !important;
  background-size: 100% 100%, min(200px, 44vw) !important;
  background-position: 0 0, right -0.5rem top -0.25rem !important;
  background-repeat: no-repeat, no-repeat !important;
}
.theme-playlist-php .playlist-detail-page.playlist-detail-page--fanwrap .episodes-column {
  padding: 14px 12px 16px !important;
  border-radius: 12px !important;
  background: rgba(255, 255, 255, 0.78) !important;
  backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(119, 123, 180, 0.28) !important;
  box-shadow: 0 10px 32px rgba(15, 23, 42, 0.08) !important;
}
.theme-playlist-php .playlist-detail-page.playlist-detail-page--fanwrap .current-video-description {
  background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.96) 0%, rgba(248, 250, 252, 0.92) 100%) !important;
  background-size: 100% 100%, min(180px, 40vw) !important;
  background-position: 0 0, right -0.5rem top -0.2rem !important;
  background-repeat: no-repeat, no-repeat !important;
}
.theme-playlist-php app-related-content .related-content {
  --related-surface: #f8fafc;
  --related-border: rgba(79, 70, 168, 0.2);
  --related-title-color: #0f172a;
  --related-label-color: #1e293b;
  --related-description-color: #475569;
  --related-meta-color: #64748b;
  --related-shadow: 0 10px 32px rgba(15, 23, 42, 0.08);
  --related-card-bg-hover: rgba(79, 70, 168, 0.06);
}
.theme-playlist-php .playlist-header-logo {
  height: calc(100% + 30px) !important;
}

/* ═══ Comment thread tokens (migrated from theme-comments.scss) ═══ */

.theme-playlist-php .playlist-detail-page .playlist-detail-comments {
  --primary-color: #4f46a8;
  --cs-slug-loading-text: #64748b;
  --cs-slug-spinner-track: #e2e8f0;
  --cs-slug-missing-bg: #fef2f2;
  --cs-slug-missing-text: #991b1b;
  --cs-slug-missing-border: transparent;
  --cs-title-color: #0f172a;
  --cs-sort-border: rgba(79, 70, 168, 0.22);
  --cs-sort-text: #475569;
  --cs-sort-hover-text: #0f172a;
  --cs-sort-bg: #f8fafc;
  --cs-dropdown-bg: #fff;
  --cs-dropdown-border: #e2e8f0;
  --cs-dropdown-shadow: 0 8px 28px rgba(15, 23, 42, 0.1);
  --cs-dropdown-item: #334155;
  --cs-dropdown-item-hover: #f1f5f9;
  --cs-empty-text: #94a3b8;
  --cs-empty-icon-opacity: 0.35;
  --cs-list-divider: #e8edf3;
  --cs-overlay-bg: rgba(248, 250, 252, 0.85);
  --cs-spinner-track: #e2e8f0;
  --cs-composer-bg: #fafbfc;
  --cs-composer-border: rgba(79, 70, 168, 0.18);
  --cs-toolbar-border: #e8edf3;
  --cs-toolbar-bg: rgba(255, 255, 255, 0.95);
  --cs-editor-color: #0f172a;
  --cs-editor-placeholder: #94a3b8;
  --cs-toolbar-btn-color: #475569;
  --cs-toolbar-btn-hover-bg: #e2e8f0;
  --cs-toolbar-btn-hover-color: #0f172a;
  --cs-toolbar-btn-active-bg: rgba(79, 70, 168, 0.12);
  --cs-toolbar-sep: #cbd5e1;
  --cs-panel-bg: #fff;
  --cs-panel-border: #e2e8f0;
  --cs-panel-shadow: 0 8px 32px rgba(15, 23, 42, 0.12);
  --cs-meta-input-bg: #fff;
  --cs-meta-input-color: #0f172a;
  --cs-meta-input-border: #e2e8f0;
  --cs-meta-placeholder: #94a3b8;
  --cs-btn-cancel-text: #64748b;
  --cs-btn-cancel-hover-bg: #f1f5f9;
  --cs-btn-cancel-hover-text: #0f172a;
  --cs-comment-name: #0f172a;
  --cs-comment-text: #475569;
  --cs-comment-time: #94a3b8;
  --cs-comment-action: #64748b;
  --cs-comment-action-hover-bg: #f1f5f9;
  --cs-comment-action-hover-text: #0f172a;
  --cs-blockquote-border: #e2e8f0;
  --cs-blockquote-text: #64748b;
  --cs-code-bg: #f1f5f9;
  --cs-content-fade: #f8fafc;
  --cs-thread-line: #cbd5e1;
  --cs-gif-search-border: #e2e8f0;
  --cs-gif-loading: #94a3b8;
  --cs-composer-shadow: 0 4px 20px rgba(15, 23, 42, 0.06);
  --cs-editor-wrap-bg: rgba(255, 255, 255, 0.65);
  --cs-editor-wrap-radius: 8px;
  --cs-ql-container-bg: transparent;
  --cs-ql-editor-bg: transparent;
  --cs-ql-list-marker: #334155;
  --cs-editor-caret: #0f172a;
  --cs-editor-selection-bg: rgba(79, 70, 168, 0.2);
  --cs-toolbar-btn-active-color: #4f46a8;
  --cs-btn-submit-bg: var(--primary-color);
  --cs-btn-submit-shadow: 0 2px 12px rgba(79, 70, 168, 0.25);
  --cs-emoji-bg: #fff;
  --cs-emoji-border-color: #e2e8f0;
  --cs-emoji-button-hover-bg: rgba(79, 70, 168, 0.08);
  --cs-emoji-category-active: #4f46a8;
  --cs-emoji-input-border: #e2e8f0;
  --cs-emoji-input-color: #0f172a;
  --cs-emoji-input-placeholder: #94a3b8;
}
