/*
 * 会員ページ（LifterLMS）のUIテーマ。
 * UTAGE会員サイトのレイアウト（カード型講座一覧・進捗バー・チェック付きレッスンリスト）を踏襲しつつ、
 * 配色はブランドカラー（エメラルド×チャコール）に合わせている。
 * LifterLMSのバージョンによりHTML構造が変わることがあるため、実際の見た目を確認しながら微調整する前提。
 */

:root {
	--lfm-mem-ink: #2C2622;
	--lfm-mem-em: #0B8A62;
	--lfm-mem-em-dark: #086F4E;
	--lfm-mem-cream: #F7F3EF;
	--lfm-mem-border: #E5DFD8;
	--lfm-mem-sub: #6B7280;
}

/*
 * テーマの既定ヘッダー・ナビゲーションを非表示にする（会員ページ・カート・購入手続きページ共通）。
 * テーマ側で「メニュー未設定時は全ページを自動的に並べる」機能が働き、規約・特商法等の
 * ページまでナビに並んでしまうのを防ぐため、代わりに独自の濃色ヘッダーバーを表示する。
 * テーマによってセレクタ名が異なるため、主要テーマで使われる代表的なクラス名を広めに指定している。
 */
header.site-header,
#masthead,
.site-header,
header#header,
#header,
nav.main-navigation,
.main-navigation,
#site-navigation,
.navbar {
	display: none !important;
}

/* ブロックテーマ（Twenty Twenty-Five等）用。テンプレートパーツはheader.wp-block-template-partで
   出力される（WordPressコア共通の仕組みのため、テーマを問わず比較的信頼できるセレクタ）。 */
header.wp-block-template-part,
.wp-site-blocks > header {
	display: none !important;
}

/* ===== 濃色ヘッダーバー（LifterLMSページの本文直前に追加） ===== */
.lfm-member-header {
	background: var(--lfm-mem-ink);
	color: #fff;
	padding: 18px 24px;
	margin: 0 0 32px;
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
	font-weight: 700;
	font-size: 16px;
	letter-spacing: 0.02em;
}

/* ===== 講座一覧（アーカイブ／カタログページ） ===== */
body.post-type-archive-course .llms-course-list,
body.tax-course_cat .llms-course-list,
ul.llms-course-list {
	display: grid !important;
	grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
	gap: 24px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.llms-course-list .llms-loop-item,
.llms-course-list li {
	background: #fff;
	border: 1px solid var(--lfm-mem-border);
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 2px 8px rgba(44, 38, 34, 0.06);
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.llms-course-list .llms-loop-item:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 16px rgba(44, 38, 34, 0.1);
}

.llms-course-list .llms-loop-item-content {
	padding: 0 0 16px;
}

.llms-course-list img,
.llms-course-list .llms-featured-img {
	width: 100%;
	height: 140px;
	object-fit: cover;
	display: block;
}

.llms-course-list .course-title,
.llms-course-list .llms-loop-item-content h3,
.llms-course-list .llms-loop-item-content h2 {
	font-size: 15px;
	font-weight: 700;
	line-height: 1.5;
	color: var(--lfm-mem-ink);
	margin: 12px 16px 8px;
	min-height: 2.8em;
}

.llms-course-list .llms-course-list a {
	text-decoration: none;
}

/* 進捗バー */
.llms-progress,
.llms-progress-bar {
	margin: 0 16px 12px;
}

.llms-progress .progress__title,
.llms-progress .progress__percentage {
	font-size: 11px;
	color: var(--lfm-mem-sub);
}

.llms-progress .progress__indicator-wrapper,
.llms-progress-bar__wrapper,
.llms-progress .progress-bar {
	background: var(--lfm-mem-border);
	border-radius: 999px;
	height: 6px;
	overflow: hidden;
	margin-top: 4px;
}

.llms-progress .progress__indicator,
.llms-progress-bar__inner,
.llms-progress .progress-bar__inner {
	background: var(--lfm-mem-em);
	height: 100%;
	border-radius: 999px;
}

/* 受講する ボタン＋％表示の行 */
.llms-loop-item-footer,
.llms-loop-item-actions {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 0 16px;
	gap: 8px;
}

.llms-course-list .llms-button-primary,
.llms-course-list .llms-loop-item-actions a {
	background: var(--lfm-mem-em);
	color: #fff !important;
	border: none;
	border-radius: 6px;
	padding: 8px 18px;
	font-size: 13px;
	font-weight: 700;
	display: inline-block;
}

.llms-course-list .llms-button-primary:hover {
	background: var(--lfm-mem-em-dark);
}

/* ===== 講座詳細ページ（レッスン一覧） ===== */
.llms-syllabus-wrapper {
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
}

.llms-syllabus-wrapper .llms-section-title,
.llms-syllabus-wrapper h3 {
	color: var(--lfm-mem-em);
	font-weight: 700;
	font-size: 15px;
	border-bottom: 2px solid var(--lfm-mem-border);
	padding-bottom: 8px;
	margin-bottom: 12px;
}

.llms-lesson-preview {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 12px;
	border-bottom: 1px solid var(--lfm-mem-border);
	gap: 12px;
}

.llms-lesson-preview .llms-lesson-complete-icon,
.llms-lesson-preview .llms-progression {
	color: var(--lfm-mem-em);
	flex-shrink: 0;
}

.llms-lesson-preview .llms-lesson-title,
.llms-lesson-preview .lesson-title {
	flex: 1;
	font-size: 14px;
	color: var(--lfm-mem-ink);
}

.llms-lesson-preview a.llms-button-primary,
.llms-lesson-preview .llms-loop-item-actions a {
	background: var(--lfm-mem-em);
	color: #fff !important;
	border-radius: 6px;
	padding: 6px 16px;
	font-size: 13px;
	font-weight: 700;
	white-space: nowrap;
}

/* サイドバー（講座サムネイル・全体進捗） */
.llms-course-sidebar,
.llms-widget-syllabus {
	background: #fff;
	border: 1px solid var(--lfm-mem-border);
	border-radius: 12px;
	padding: 16px;
}

.llms-course-sidebar .llms-progress,
.llms-widget-syllabus .llms-progress {
	margin: 12px 0 0;
}
