/* ==========================================================================
   Page-specific layout
   ========================================================================== */

/* --- My Journey --- */
.rs-journey-head {
	display: flex;
	flex-wrap: wrap;
	gap: var(--rs-space-5);
	align-items: center;
	justify-content: space-between;
	background: var(--rs-surface);
	border: 1px solid var(--rs-border);
	border-radius: var(--rs-radius-lg);
	padding: var(--rs-space-6);
	margin-bottom: var(--rs-space-7);
}
.rs-journey-head__progress { flex: 1; min-width: 220px; }
.rs-journey-head__stats { display: flex; gap: var(--rs-space-5); }
.rs-journey-stat { text-align: center; }
.rs-journey-stat strong { display: block; font-family: var(--rs-font-heading); font-size: var(--rs-fs-2xl); color: var(--rs-primary); }
.rs-journey-stat span { font-size: var(--rs-fs-xs); color: var(--rs-text-muted); }

/* --- Achievements --- */
.rs-achieve-tabs { display: flex; gap: var(--rs-space-3); margin-bottom: var(--rs-space-6); flex-wrap: wrap; }
.rs-achieve-tab {
	padding: var(--rs-space-2) var(--rs-space-5);
	border-radius: var(--rs-radius-pill);
	background: var(--rs-surface);
	border: 2px solid var(--rs-border);
	cursor: pointer;
	font-weight: 700;
	font-family: var(--rs-font-heading);
}
.rs-achieve-tab.is-active { background: var(--rs-primary); border-color: var(--rs-primary); color: #fff; }
.rs-achieve-panel { display: none; }
.rs-achieve-panel.is-active { display: block; }

/* --- Parents guide --- */
.rs-guide-chapter {
	border: 1px solid var(--rs-border);
	border-radius: var(--rs-radius-md);
	margin-bottom: var(--rs-space-4);
	overflow: hidden;
	background: var(--rs-surface);
}
.rs-guide-chapter__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: var(--rs-space-4) var(--rs-space-5);
	cursor: pointer;
	font-family: var(--rs-font-heading);
	font-weight: 700;
}
.rs-guide-chapter__body {
	padding: 0 var(--rs-space-5);
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease, padding var(--rs-space-transition, 0.3s ease);
}
.rs-guide-chapter.is-open .rs-guide-chapter__body {
	max-height: 1000px;
	padding: 0 var(--rs-space-5) var(--rs-space-5);
}
.rs-guide-chapter__toggle { transition: transform 0.3s ease; }
.rs-guide-chapter.is-open .rs-guide-chapter__toggle { transform: rotate(180deg); }

/* --- About --- */
.rs-about-values { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--rs-space-5); }
@media (max-width: 720px) { .rs-about-values { grid-template-columns: 1fr; } }

/* --- Contact --- */
.rs-contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--rs-space-7); align-items: start; }
@media (max-width: 900px) { .rs-contact-grid { grid-template-columns: 1fr; } }
.rs-contact-info { display: flex; flex-direction: column; gap: var(--rs-space-4); }
.rs-contact-info__row { display: flex; align-items: center; gap: var(--rs-space-3); }
.rs-contact-map { border-radius: var(--rs-radius-md); overflow: hidden; border: 1px solid var(--rs-border); }
.rs-contact-map iframe { width: 100%; height: 260px; border: none; display: block; }

/* --- Dictionary grid --- */
.rs-dict-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--rs-space-4); }
@media (max-width: 900px) { .rs-dict-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .rs-dict-grid { grid-template-columns: 1fr; } }
