/* ==========================================================================
   MODULE: components/report-teaser (.wzs-report-teaser)
   업무보고서 예시를 "스크린샷" 톤의 축소 카드로 보여주는 미리보기.
   실제 콘텐츠는 장식용(aria-hidden) 스켈레톤이며, 클릭 시 모달(components/modal.css)로
   전체 예시(components/report-preview.css)를 띄움.
   ========================================================================== */

.wzs-report-teaser {
	margin-top: var(--wzs-space-6);
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}

.wzs-report-teaser-label {
	margin-bottom: var(--wzs-space-3);
	text-align: center;
	font-size: var(--wzs-fs-lg);
	font-weight: 700;
	color: var(--wzs-ink);
}

.wzs-report-teaser-window {
	position: relative;
	background: var(--wzs-white);
	border: 1px solid var(--wzs-border);
	border-radius: var(--wzs-radius-lg);
	box-shadow: var(--wzs-shadow-md);
	overflow: hidden;
}

/* 회색 스켈레톤 바가 "로딩 중"으로 오인되지 않도록 예시임을 명시하는 태그 */
.wzs-report-teaser-tag {
	position: absolute;
	top: var(--wzs-space-3);
	right: var(--wzs-space-3);
	z-index: 1;
	padding: 3px 10px;
	border-radius: 999px;
	background: var(--wzs-ink);
	color: var(--wzs-white);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.02em;
}

.wzs-report-teaser-chrome {
	display: flex;
	align-items: center;
	gap: 6px;
	padding: var(--wzs-space-2) var(--wzs-space-3);
	background: var(--wzs-bg-alt);
	border-bottom: 1px solid var(--wzs-border);
}

/* 창 버튼 세 개. 회색이면 "창"으로 안 읽혀서 맥 신호등 색을 넣는다 —
   홈의 검색 목업·자가진단 창(components/window.css)과 같은 색을 쓴다.
   특정 회사 로고가 아니라 OS 관례라 상표 문제는 없다. */
.wzs-report-teaser-chrome span:not(.wzs-report-teaser-chrome-title) {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: var(--wzs-border);
}

.wzs-report-teaser-chrome span:nth-child(1) {
	background: #ff5f57;
}

.wzs-report-teaser-chrome span:nth-child(2) {
	background: #febc2e;
}

.wzs-report-teaser-chrome span:nth-child(3) {
	background: #28c840;
}

.wzs-report-teaser-chrome-title {
	margin-left: var(--wzs-space-2);
	font-size: 11px;
	color: var(--wzs-ink-muted);
	font-weight: 600;
}

.wzs-report-teaser-body {
	padding: var(--wzs-space-4);
	display: flex;
	flex-direction: column;
	gap: var(--wzs-space-3);
	height: 200px;
	overflow: hidden;
}

.wzs-report-teaser-row {
	display: flex;
	align-items: center;
	gap: var(--wzs-space-2);
}

.wzs-report-teaser-bar {
	height: 10px;
	border-radius: 4px;
	background: var(--wzs-bg-alt);
}

.wzs-report-teaser-chip {
	flex: none;
	width: 40px;
	height: 16px;
	border-radius: 999px;
	background: var(--wzs-amber-soft);
}

.wzs-report-teaser-progress {
	height: 8px;
	border-radius: 999px;
	background: var(--wzs-bg-alt);
	overflow: hidden;
}

.wzs-report-teaser-progress-fill {
	height: 100%;
	background: var(--wzs-amber);
}

.wzs-report-teaser-timeline {
	display: flex;
	align-items: center;
	gap: var(--wzs-space-2);
}

.wzs-report-teaser-dot {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--wzs-border);
}

.wzs-report-teaser-dot.is-done {
	background: var(--wzs-ink);
}

.wzs-report-teaser-dot.is-current {
	background: var(--wzs-amber);
	box-shadow: 0 0 0 3px var(--wzs-amber-soft);
}

.wzs-report-teaser-fade {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 140px;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, var(--wzs-white) 78%);
	pointer-events: none;
}

/* 좁은 화면에서 버튼 문구가 단어 중간에서 줄바꿈되지 않도록 고정 */
/* 가운데 정렬에 transform을 쓰지 않는 이유:
   .wzs-btn:hover 의 transform(translateY(-2px))이 정렬용 translateX(-50%)를 통째로 덮어써서
   버튼이 제 폭의 절반만큼 오른쪽으로 튀는 문제가 있었다. left/right + margin auto 로 정렬하면
   transform 자리가 비어 있어 상태 효과와 서로 간섭하지 않는다. */
.wzs-report-teaser-cta {
	position: absolute;
	left: 0;
	right: 0;
	bottom: var(--wzs-space-4);
	width: fit-content;
	margin-inline: auto;
	white-space: nowrap;
}

/* 목업 위에 떠 있는 버튼이라 눌릴 때 위로 뜨면 어색하다 — 제자리에서 색으로만 반응시킨다 */
.wzs-report-teaser-cta:hover,
.wzs-report-teaser-cta:active {
	transform: none;
}

@media (max-width: 480px) {
	.wzs-report-teaser-cta {
		padding: 12px 20px;
		font-size: var(--wzs-fs-sm);
	}
}
