/* ── 공개 강사 상세 — 프로필 요약 · 오른쪽 도구 · 소개 창 ─────────────────── */
.tutor-detail {
	display: grid;
	gap: var(--wa-space-l);
	min-inline-size: 0;
}
.tutor-detail .tutor-reviews article {
	padding-block: var(--wa-space-m);
	border-block-end: 1px solid var(--wa-color-surface-border);
	overflow-wrap: anywhere;
}
.tutor-detail > header {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
}
.tutor-detail .tutor-detail-summary p { margin-block: var(--wa-space-xs) 0; overflow-wrap: anywhere; }
.tutor-detail > :is(p, h2) { margin: 0; }
.tutor-detail .tutor-detail-actions { display: grid; gap: var(--wa-space-xs); }
.tutor-detail .tutor-detail-action {
	display: inline-grid;
	place-items: center;
	box-sizing: border-box;
	inline-size: 2.75rem;
	block-size: 2.75rem;
	padding: 0;
	border: 1px solid var(--wa-color-brand-border-quiet);
	border-radius: var(--wa-border-radius-m);
	background: var(--wa-color-brand-fill-quiet);
	color: var(--wa-color-brand-on-quiet);
	font: inherit;
	font-size: var(--wa-font-size-l);
	text-decoration: none;
	cursor: pointer;
}
.tutor-detail .tutor-detail-actions a { background: var(--wa-color-brand-fill-loud); color: var(--wa-color-brand-on-loud); }
.tutor-detail .tutor-detail-action:hover { filter: brightness(0.95); }
.tutor-detail .tutor-detail-action:focus-visible { outline: 2px solid var(--wa-color-focus); outline-offset: 2px; }
.tutor-detail .tutor-detail-dialog {
	box-sizing: border-box;
	inline-size: min(44rem, calc(100vw - 2rem));
	max-block-size: calc(100dvh - 2rem);
	padding: var(--wa-space-l);
	overflow-y: auto;
	border: 1px solid var(--wa-color-surface-border);
	border-radius: var(--wa-border-radius-l);
	background: var(--wa-color-surface-raised);
	color: var(--wa-color-text-normal);
	box-shadow: var(--wa-shadow-l);
}
.tutor-detail .tutor-detail-dialog::backdrop { background: rgb(0 0 0 / 0.45); }
.tutor-detail .tutor-detail-dialog[open] { display: block; }
.tutor-detail .tutor-detail-dialog > header { inline-size: 100%; justify-content: space-between; gap: var(--wa-space-s); margin-block-end: var(--wa-space-l); }
.tutor-detail .tutor-detail-dialog > header h2 { margin: 0; font-size: var(--wa-font-size-xl); }
.tutor-detail .tutor-detail-dialog form { margin: 0; }
.tutor-detail .tutor-detail-dialog .tutor-facts { margin: 0; }
.tutor-detail .tutor-detail-dialog .pre-line { overflow-wrap: anywhere; }
.tutor-detail .tutor-detail-video-dialog { inline-size: min(52rem, calc(100vw - 2rem)); }
.tutor-detail .tutor-detail-video-dialog .tutor-video { display: block; inline-size: 100%; max-inline-size: none; border-radius: var(--wa-border-radius-m); }

@media (max-width: 599px) {
	.tutor-detail > header { grid-template-columns: minmax(0, 1fr) auto; }
	.tutor-detail > header .tutor-photo { inline-size: 5rem; block-size: 5rem; }
	.tutor-detail .tutor-detail-summary { grid-column: 1; }
	.tutor-detail .tutor-detail-actions { grid-column: 2; grid-row: 1 / 3; align-self: start; }
	.tutor-detail .tutor-detail-dialog { padding: var(--wa-space-m); }
	.tutor-detail .tutor-detail-dialog .tutor-facts { grid-template-columns: minmax(0, 1fr); row-gap: var(--wa-space-2xs); }
	.tutor-detail .tutor-detail-dialog .tutor-facts dd { margin-block-end: var(--wa-space-s); }
}
