/* ==========================================================================
   Tutor LMS：テンプレートは上書きせず、色・フォント・角丸をブランドに合わせる
   Tutor は :root に --tutor-color-primary などを出力するので、body で上書きする
   ========================================================================== */

body {
	--tutor-color-primary: var(--c-wine);
	--tutor-color-primary-rgb: 88, 15, 24;
	--tutor-color-primary-hover: var(--c-wine-deep);
	--tutor-color-primary-hover-rgb: 53, 10, 14;
	--tutor-body-color: var(--c-ink);
	--tutor-border-color: var(--c-line);
	--tutor-color-gray: var(--c-muted);
}

/* フォント */
.tutor-wrap,
.tutor-course-details-page,
.tutor-dashboard,
.tutor-login-wrap {
	font-family: var(--font-body);
}

.tutor-course-details-title,
.tutor-dashboard-title,
.tutor-course-name,
.tutor-fs-3,
.tutor-fs-4 {
	font-family: var(--font-heading);
	letter-spacing: .04em;
}

/* ボタン：テーマのボタンに寄せる */
.tutor-btn {
	border-radius: var(--radius-s);
	letter-spacing: .06em;
}

.tutor-btn-primary {
	background-color: var(--c-wine);
	border-color: var(--c-wine);
}

.tutor-btn-primary:hover {
	background-color: var(--c-wine-deep);
	border-color: var(--c-wine-deep);
}

/* カード・入力欄 */
.tutor-card,
.tutor-course-card,
.tutor-dashboard-content-inner,
.tutor-form-control {
	border-radius: var(--radius);
}

.tutor-form-control:focus {
	border-color: var(--c-blue);
	box-shadow: 0 0 0 3px rgba(147, 162, 185, .35);
}

/* 進捗バー */
.tutor-progress-value {
	background-color: var(--c-wine);
}

/* Tutor の画面はテーマの見出し帯がないので上下に余白を足す */
.is-tutor .l-main,
.tutor-dashboard-page .l-main {
	padding-block: clamp(32px, 6vw, 64px);
}

/* 受講画面：ヘッダーのすぐ下から、左のコース内容と右の本文を画面いっぱいに並べる */
.is-tutor-learning .l-main {
	padding-block: 0;
}

.is-tutor-learning .tutor-course-single-content-wrapper {
	border-top: 1px solid var(--c-line);
}

/* 受講画面上部の帯（レッスン名・進行度）をブランドのワインに */
.is-tutor-learning .tutor-course-topic-single-header {
	background: var(--c-wine);
}

/* スマホでコース内容を開いたとき、ヘッダーより前面に出す */
.is-tutor-learning .tutor-course-single-sidebar-open .tutor-course-single-sidebar-wrapper {
	z-index: 1026;
}

/* ログインフォーム */
.tutor-login-wrap {
	max-width: 480px;
	margin-inline: auto;
	padding: clamp(24px, 4vw, 40px);
	border: 1px solid var(--c-line);
	border-radius: var(--radius);
	background: var(--c-surface);
}

/* 本文エリアの最低の高さを、ヘッダーの分だけ低くする（フッターまでの余白が空きすぎないように） */
.is-tutor-learning .tutor-course-single-content-wrapper #tutor-single-entry-content {
	min-height: calc(100vh - var(--header-h));
}
