/* ==========================================================================
   Astrarium — feuille de style frontend
   Direction : atlas céleste ancien. Bleu nuit, laiton d'astrolabe, sérif.
   ========================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Spectral:wght@300;400;500&display=swap');

.astrarium {
	--ink:        #0b1020;
	--night:      #131a30;
	--night-2:    #1b2340;
	--parchment:  #f1ead9;
	--mist:       #b9c2dc;
	--brass:      #c9a227;
	--brass-soft: #e6cd7e;
	--ember:      #c2603f;
	--line:       rgba(201, 162, 39, 0.22);

	position: relative;
	max-width: 980px;
	margin: 2rem auto;
	padding: clamp(1.4rem, 4vw, 3rem);
	overflow: hidden;
	border-radius: 18px;
	background:
		radial-gradient(120% 80% at 50% -10%, rgba(201,162,39,0.10), transparent 60%),
		linear-gradient(160deg, var(--night) 0%, var(--ink) 100%);
	border: 1px solid var(--line);
	color: var(--parchment);
	font-family: 'Spectral', Georgia, serif;
	font-weight: 400;
	line-height: 1.65;
	box-shadow: 0 30px 80px -40px rgba(0,0,0,0.8);
}

.astrarium *,
.astrarium *::before,
.astrarium *::after { box-sizing: border-box; }

/* Garantit que l'attribut [hidden] l'emporte sur les règles display (flex/grid)
   du catalogue, de l'espace de travail, etc. Sans cela, un conteneur en
   display:flex resterait visible malgré hidden. */
.astrarium [hidden],
.astrarium__catalog[hidden],
.astrarium__workspace[hidden] { display: none !important; }

/* Ciel étoilé en fond ------------------------------------------------------ */
.astrarium__sky {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image:
		radial-gradient(1px 1px at 20% 30%, rgba(241,234,217,0.9), transparent),
		radial-gradient(1px 1px at 70% 20%, rgba(241,234,217,0.7), transparent),
		radial-gradient(1.4px 1.4px at 40% 70%, rgba(230,205,126,0.8), transparent),
		radial-gradient(1px 1px at 85% 60%, rgba(241,234,217,0.6), transparent),
		radial-gradient(1px 1px at 55% 45%, rgba(241,234,217,0.5), transparent),
		radial-gradient(1.2px 1.2px at 12% 80%, rgba(241,234,217,0.7), transparent),
		radial-gradient(1px 1px at 90% 85%, rgba(230,205,126,0.6), transparent);
	opacity: 0.6;
}

/* En-tête ------------------------------------------------------------------ */
.astrarium__head { position: relative; text-align: center; margin-bottom: 2.2rem; }

.astrarium__eyebrow {
	margin: 0 0 0.6rem;
	font-family: 'Spectral', serif;
	font-size: 0.74rem;
	letter-spacing: 0.32em;
	text-transform: uppercase;
	color: var(--brass);
}

.astrarium__title {
	margin: 0;
	font-family: 'Cormorant Garamond', serif;
	font-weight: 500;
	font-size: clamp(2rem, 5vw, 3.1rem);
	line-height: 1.05;
	color: var(--parchment);
}

.astrarium__lede {
	max-width: 46ch;
	margin: 0.9rem auto 0;
	color: var(--mist);
	font-size: 1rem;
}

/* Grille des cartes -------------------------------------------------------- */
.astrarium__grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	gap: 0.9rem;
}

.astrarium-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.35rem;
	padding: 1.3rem 1.2rem;
	text-align: left;
	cursor: pointer;
	color: var(--parchment);
	background: linear-gradient(180deg, rgba(27,35,64,0.7), rgba(19,26,48,0.7));
	border: 1px solid var(--line);
	border-radius: 13px;
	transition: transform .35s cubic-bezier(.2,.8,.2,1), border-color .35s, box-shadow .35s;
}

.astrarium-card:hover,
.astrarium-card:focus-visible {
	transform: translateY(-4px);
	border-color: rgba(201,162,39,0.55);
	box-shadow: 0 18px 40px -24px rgba(201,162,39,0.6);
	outline: none;
}

.astrarium-card__glyph {
	width: 40px; height: 40px;
	color: var(--brass-soft);
	margin-bottom: 0.3rem;
}
.astrarium-card__glyph svg { width: 100%; height: 100%; }

.astrarium-card__label {
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1.1;
}

.astrarium-card__tag { font-size: 0.86rem; color: var(--mist); }

/* Formulaire --------------------------------------------------------------- */
.astrarium-form { position: relative; max-width: 560px; margin: 0 auto; }

.astrarium-form__back {
	display: inline-block;
	margin-bottom: 1.4rem;
	padding: 0;
	background: none; border: none; cursor: pointer;
	color: var(--mist);
	font-family: 'Spectral', serif;
	font-size: 0.9rem;
	letter-spacing: 0.02em;
	transition: color .25s;
}
.astrarium-form__back:hover { color: var(--brass-soft); }

.astrarium-form__head {
	display: flex; align-items: center; gap: 1rem;
	padding-bottom: 1.3rem; margin-bottom: 1.6rem;
	border-bottom: 1px solid var(--line);
}
.astrarium-form__glyph { width: 44px; height: 44px; color: var(--brass); flex: none; }
.astrarium-form__glyph svg { width: 100%; height: 100%; }
.astrarium-form__head h3 {
	margin: 0;
	font-family: 'Cormorant Garamond', serif;
	font-weight: 600; font-size: 1.7rem; line-height: 1;
	color: var(--parchment);
}
.astrarium-form__head p { margin: 0.25rem 0 0; color: var(--mist); font-size: 0.92rem; }

.astrarium-form__fields { display: grid; gap: 1.1rem; }

.astrarium-field { display: flex; flex-direction: column; gap: 0.4rem; }
.astrarium-field__label {
	font-size: 0.8rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--brass);
}
.astrarium-field__label em { color: var(--ember); font-style: normal; }
.astrarium-field__hint { font-size: 0.82rem; color: var(--mist); }

.astrarium-field input,
.astrarium-field textarea {
	width: 100%;
	padding: 0.7rem 0.9rem;
	font-family: 'Spectral', serif;
	font-size: 1rem;
	color: var(--parchment);
	background: rgba(11,16,32,0.6);
	border: 1px solid var(--line);
	border-radius: 9px;
	transition: border-color .25s, box-shadow .25s;
	resize: vertical;
}
.astrarium-field input::placeholder,
.astrarium-field textarea::placeholder { color: rgba(154,166,196,0.55); }
.astrarium-field input:focus,
.astrarium-field textarea:focus {
	outline: none;
	border-color: var(--brass);
	box-shadow: 0 0 0 3px rgba(201,162,39,0.16);
}
/* Icônes natives de date/time en clair sur fond sombre */
.astrarium-field input[type="date"]::-webkit-calendar-picker-indicator,
.astrarium-field input[type="time"]::-webkit-calendar-picker-indicator { filter: invert(0.8) sepia(1) saturate(2) hue-rotate(5deg); cursor: pointer; }

.astrarium-form__submit {
	margin-top: 1.8rem;
	width: 100%;
	padding: 0.95rem 1.4rem;
	cursor: pointer;
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.25rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--ink);
	background: linear-gradient(180deg, var(--brass-soft), var(--brass));
	border: none;
	border-radius: 10px;
	transition: transform .2s, filter .2s, box-shadow .3s;
	box-shadow: 0 14px 30px -16px rgba(201,162,39,0.8);
}
.astrarium-form__submit:hover { transform: translateY(-2px); filter: brightness(1.05); }
.astrarium-form__submit:disabled { opacity: 0.6; cursor: progress; transform: none; }

/* Scène : loader + résultat ----------------------------------------------- */
.astrarium-stage { position: relative; }

.astrarium-loader { text-align: center; padding: 2.5rem 0 1.5rem; }
.astrarium-loader__text {
	margin-top: 1.4rem;
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.3rem;
	font-style: italic;
	color: var(--brass-soft);
}

/* Astrolabe animé ---------------------------------------------------------- */
.astrarium-astrolabe {
	position: relative;
	width: 110px; height: 110px;
	margin: 0 auto;
}
.astrarium-astrolabe__ring {
	position: absolute; inset: 0;
	border-radius: 50%;
	border: 1px solid var(--brass);
}
.astrarium-astrolabe__ring--outer {
	border-style: dashed;
	border-color: rgba(201,162,39,0.6);
	animation: astrarium-spin 9s linear infinite;
}
.astrarium-astrolabe__ring--mid {
	inset: 16px;
	border-color: rgba(230,205,126,0.7);
	border-top-color: transparent;
	border-bottom-color: transparent;
	animation: astrarium-spin 5s linear infinite reverse;
}
.astrarium-astrolabe__ring--inner {
	inset: 32px;
	border-color: rgba(201,162,39,0.5);
	border-left-color: transparent;
	border-right-color: transparent;
	animation: astrarium-spin 3.4s linear infinite;
}
.astrarium-astrolabe__core {
	position: absolute; inset: 47px;
	border-radius: 50%;
	background: radial-gradient(circle, var(--brass-soft), var(--brass));
	box-shadow: 0 0 18px 4px rgba(230,205,126,0.55);
	animation: astrarium-pulse 2.4s ease-in-out infinite;
}
@keyframes astrarium-spin { to { transform: rotate(360deg); } }
@keyframes astrarium-pulse { 0%,100% { opacity: 0.7; transform: scale(0.9); } 50% { opacity: 1; transform: scale(1.1); } }

/* Résultat ----------------------------------------------------------------- */
.astrarium-result { position: relative; animation: astrarium-rise .7s ease both; }
@keyframes astrarium-rise { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }

.astrarium-result__draw:not(:empty) { display: flex; justify-content: center; margin: 0 0 1.8rem; }

.astrarium-result__body h2,
.astrarium-result__body h3,
.astrarium-result__body h4 {
	font-family: 'Cormorant Garamond', serif;
	font-weight: 600;
	color: var(--brass-soft);
	line-height: 1.15;
	margin: 1.7rem 0 0.6rem;
}
.astrarium-result__body h2 { font-size: 1.65rem; }
.astrarium-result__body h3 { font-size: 1.35rem; }
.astrarium-result__body > h2:first-child,
.astrarium-result__body > h3:first-child { margin-top: 0; }
.astrarium-result__body p { margin: 0 0 1rem; color: var(--parchment); }
.astrarium-result__body strong { color: var(--brass-soft); font-weight: 500; }
.astrarium-result__body ul { margin: 0 0 1rem; padding-left: 1.2rem; }
.astrarium-result__body li { margin: 0.3rem 0; }

.astrarium-result__actions { margin-top: 2rem; text-align: center; }
.astrarium-result__again {
	padding: 0.7rem 1.6rem;
	cursor: pointer;
	font-family: 'Spectral', serif;
	font-size: 0.92rem;
	letter-spacing: 0.06em;
	color: var(--brass-soft);
	background: transparent;
	border: 1px solid var(--brass);
	border-radius: 30px;
	transition: background .25s, color .25s;
}
.astrarium-result__again:hover { background: var(--brass); color: var(--ink); }

.astrarium-result__disclaimer {
	margin-top: 1.6rem;
	font-size: 0.78rem;
	color: rgba(154,166,196,0.7);
	text-align: center;
	font-style: italic;
}

.astrarium-error {
	margin: 1.5rem auto;
	max-width: 560px;
	padding: 1rem 1.2rem;
	text-align: center;
	color: #f3d4c8;
	background: rgba(194,96,63,0.15);
	border: 1px solid rgba(194,96,63,0.5);
	border-radius: 10px;
}

/* Hexagramme Yi King ------------------------------------------------------- */
.astrarium-hex { display: flex; flex-direction: column; align-items: center; gap: 0.8rem; }
.astrarium-hex__stack { display: flex; flex-direction: column; gap: 9px; width: 120px; }
.astrarium-hex__line { height: 11px; position: relative; }
.astrarium-hex__line--yang { background: var(--brass); border-radius: 2px; }
.astrarium-hex__line--yin {
	background: linear-gradient(90deg, var(--brass) 0 42%, transparent 42% 58%, var(--brass) 58% 100%);
	border-radius: 2px;
}
.astrarium-hex__line.is-changing::after {
	content: '○'; position: absolute; right: -22px; top: 50%; transform: translateY(-50%);
	color: var(--brass-soft); font-size: 0.9rem;
}
.astrarium-hex__caption {
	font-family: 'Cormorant Garamond', serif; font-size: 1.3rem; color: var(--brass-soft); text-align: center;
}
.astrarium-hex__caption span { font-family: 'Spectral', serif; font-size: 0.82rem; color: var(--mist); letter-spacing: 0.1em; }

/* Tarot -------------------------------------------------------------------- */
.astrarium-tarot { display: flex; gap: 0.9rem; flex-wrap: wrap; justify-content: center; }
.astrarium-tarot__card {
	width: 120px; min-height: 170px;
	display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 0.5rem;
	padding: 1rem 0.7rem; text-align: center;
	background: linear-gradient(165deg, var(--night-2), var(--ink));
	border: 1px solid var(--brass); border-radius: 11px;
	box-shadow: inset 0 0 0 4px rgba(201,162,39,0.12);
}
.astrarium-tarot__card.is-reversed { transform: rotate(180deg); }
.astrarium-tarot__card.is-reversed .astrarium-tarot__name,
.astrarium-tarot__card.is-reversed .astrarium-tarot__sense,
.astrarium-tarot__card.is-reversed .astrarium-tarot__star { transform: rotate(180deg); }
.astrarium-tarot__star { color: var(--brass); font-size: 1.3rem; }
.astrarium-tarot__name { font-family: 'Cormorant Garamond', serif; font-size: 1.1rem; color: var(--parchment); line-height: 1.1; }
.astrarium-tarot__sense { font-size: 0.74rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--mist); }

/* Badge (chinois, numérologie) -------------------------------------------- */
.astrarium-badge {
	display: inline-flex; flex-direction: column; align-items: center; gap: 0.2rem;
	padding: 1.1rem 2rem;
	background: linear-gradient(165deg, var(--night-2), var(--ink));
	border: 1px solid var(--brass); border-radius: 14px;
}
.astrarium-badge__main { font-family: 'Cormorant Garamond', serif; font-size: 2.2rem; font-weight: 600; color: var(--brass-soft); line-height: 1; }
.astrarium-badge__sub { font-size: 0.78rem; letter-spacing: 0.16em; text-transform: uppercase; color: var(--mist); }

/* Accessibilité ------------------------------------------------------------ */
@media (prefers-reduced-motion: reduce) {
	.astrarium-astrolabe__ring,
	.astrarium-astrolabe__core,
	.astrarium-result,
	.astrarium-card { animation: none !important; transition: none !important; }
}

@media (max-width: 600px) {
	.astrarium { margin: 1rem; border-radius: 14px; }
	.astrarium-tarot__card { width: 100px; min-height: 150px; }
}

/* ==========================================================================
   Thème astral : roue SVG + tableau des positions (ajout v1.1)
   ========================================================================== */

.astrarium-theme {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
	gap: clamp(1rem, 3vw, 2rem);
	align-items: center;
	margin: 0 0 1.6rem;
}

@media (max-width: 720px) {
	.astrarium-theme { grid-template-columns: 1fr; }
}

.astrarium-theme__wheel { width: 100%; }

.astrarium-wheel {
	width: 100%;
	height: auto;
	display: block;
	filter: drop-shadow(0 18px 40px rgba(0,0,0,0.55));
}

.astrarium-wheel__sign {
	font-size: 20px;
	fill: #e6cd7e; /* toujours clair : le disque de la roue est sombre dans les deux thèmes */
	font-family: 'Cormorant Garamond', serif;
}

.astrarium-wheel__house {
	font-size: 11px;
	fill: #b9c2dc;
	font-family: 'Spectral', serif;
}

.astrarium-wheel__planet {
	font-size: 19px;
	fill: #f1ead9;
}

.astrarium-wheel__angle {
	font-size: 12px;
	fill: #e6cd7e;
	font-family: 'Spectral', serif;
	letter-spacing: 0.04em;
}

/* Tableau des positions ---------------------------------------------------- */

.astrarium-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.92rem;
}

.astrarium-table thead th {
	text-align: left;
	font-family: 'Cormorant Garamond', serif;
	font-weight: 600;
	font-size: 0.82rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--brass);
	padding: 0 0.5rem 0.5rem;
	border-bottom: 1px solid var(--line);
}

.astrarium-table td {
	padding: 0.36rem 0.5rem;
	border-bottom: 1px solid rgba(201, 162, 39, 0.10);
	color: var(--parchment);
}

.astrarium-table__sym {
	font-size: 1.1rem;
	color: var(--brass-soft);
	width: 1.6rem;
	text-align: center;
}

.astrarium-table__house {
	text-align: center;
	color: var(--mist);
	width: 3rem;
}

.astrarium-table__notice {
	margin: 0.8rem 0 0;
	font-size: 0.82rem;
	font-style: italic;
	color: var(--mist);
}

/* Grille numérologique ----------------------------------------------------- */

.astrarium-numgrid {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem;
	justify-content: center;
	margin: 0 0 1.6rem;
}

.astrarium-numgrid__cell {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.2rem;
	min-width: 6.2rem;
	padding: 0.9rem 0.8rem;
	border: 1px solid var(--line);
	border-radius: 12px;
	background: rgba(27, 35, 64, 0.5);
	font-size: 0.72rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--mist);
	text-align: center;
}

.astrarium-numgrid__cell b {
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.9rem;
	font-weight: 600;
	line-height: 1;
	color: var(--brass-soft);
}

/* ==========================================================================
   Mode pleine page (gabarit « Astrarium — Pleine page »)
   ========================================================================== */

body.astrarium-fullpage-active {
	margin: 0;
	min-height: 100vh;
	background:
		radial-gradient(1200px 700px at 50% -20%, rgba(201,162,39,0.10), transparent 60%),
		radial-gradient(900px 600px at 85% 110%, rgba(120,90,180,0.10), transparent 60%),
		linear-gradient(160deg, #131a30 0%, #0b1020 60%, #070a16 100%);
	color: #f1ead9;
}

.astrarium-fullpage-stage {
	position: relative;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: clamp(1rem, 4vw, 3.5rem) 1rem;
	overflow: hidden;
}

/* Champ d'étoiles couvrant tout l'écran. */
.astrarium-fullpage-stage::before,
.astrarium-fullpage-stage::after {
	content: "";
	position: fixed;
	inset: 0;
	pointer-events: none;
	background-repeat: repeat;
}

.astrarium-fullpage-stage::before {
	background-image:
		radial-gradient(1.4px 1.4px at 12% 22%, rgba(255,255,255,0.9), transparent 50%),
		radial-gradient(1.2px 1.2px at 70% 14%, rgba(255,255,255,0.7), transparent 50%),
		radial-gradient(1.6px 1.6px at 38% 68%, rgba(255,255,255,0.8), transparent 50%),
		radial-gradient(1.1px 1.1px at 88% 56%, rgba(255,255,255,0.6), transparent 50%),
		radial-gradient(1.3px 1.3px at 22% 86%, rgba(255,255,255,0.75), transparent 50%),
		radial-gradient(1.2px 1.2px at 58% 40%, rgba(230,205,126,0.6), transparent 50%);
	background-size: 480px 480px, 540px 540px, 620px 620px, 500px 500px, 580px 580px, 460px 460px;
	opacity: 0.6;
	animation: astrarium-drift 240s linear infinite;
}

.astrarium-fullpage-stage::after {
	background-image:
		radial-gradient(1px 1px at 8% 50%, rgba(255,255,255,0.5), transparent 50%),
		radial-gradient(1px 1px at 47% 12%, rgba(255,255,255,0.45), transparent 50%),
		radial-gradient(1px 1px at 80% 80%, rgba(255,255,255,0.5), transparent 50%);
	background-size: 300px 300px, 360px 360px, 340px 340px;
	opacity: 0.4;
}

@keyframes astrarium-drift {
	from { transform: translateY(0); }
	to   { transform: translateY(-480px); }
}

@media (prefers-reduced-motion: reduce) {
	.astrarium-fullpage-stage::before { animation: none; }
}

/* Le panneau s'élargit et se fond dans la scène. */
.astrarium-fullpage-active .astrarium {
	position: relative;
	z-index: 1;
	max-width: min(1360px, 94vw);
	width: 100%;
	margin: 0;
	background:
		radial-gradient(120% 80% at 50% -10%, rgba(201,162,39,0.10), transparent 60%),
		linear-gradient(160deg, rgba(19,26,48,0.86) 0%, rgba(11,16,32,0.92) 100%);
	backdrop-filter: blur(2px);
	box-shadow: 0 40px 120px -50px rgba(0,0,0,0.9);
}

.astrarium-fullpage-stage__foot {
	position: relative;
	z-index: 1;
	margin-top: 1.6rem;
	font-family: 'Spectral', serif;
	font-size: 0.85rem;
	letter-spacing: 0.08em;
	color: #9aa6c4;
}

.astrarium-fullpage-stage__foot a {
	color: #c9a227;
	text-decoration: none;
	border-bottom: 1px solid rgba(201,162,39,0.3);
}

/* ==========================================================================
   Runes & géomancie (ajout v1.2)
   ========================================================================== */

.astrarium-rune__glyph {
	font-size: 2.6rem;
	line-height: 1;
	color: var(--brass-soft);
	margin-bottom: 0.4rem;
}

.astrarium-tarot--runes .astrarium-tarot__card.is-reversed .astrarium-rune__glyph {
	transform: rotate(180deg);
}

/* Bouclier géomantique ----------------------------------------------------- */

.astrarium-geo {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1.2rem;
	margin: 0 0 1.6rem;
}

.astrarium-geo__mothers {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1rem;
}

.astrarium-geo__cell {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.45rem;
	padding: 0.9rem 1.1rem;
	border: 1px solid var(--line);
	border-radius: 12px;
	background: rgba(27, 35, 64, 0.5);
	font-size: 0.72rem;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--mist);
}

.astrarium-geo__cell--judge {
	border-color: rgba(230, 205, 126, 0.6);
	background: rgba(201, 162, 39, 0.10);
	color: var(--brass-soft);
}

.astrarium-geo__fig {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.astrarium-geo__row {
	display: flex;
	justify-content: center;
	gap: 7px;
	height: 7px;
}

.astrarium-geo__row i {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--brass-soft);
	display: block;
}

/* ==========================================================================
   Cinq éléments du Yi King (Wu Xing) — sous l'hexagramme (v1.3)
   ========================================================================== */

.astrarium-wuxing {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin-top: 1rem;
	width: 100%;
	max-width: 240px;
}

.astrarium-wuxing__tri {
	display: flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.5rem 0.7rem;
	border: 1px solid var(--line);
	border-radius: 10px;
	background: rgba(27, 35, 64, 0.5);
	font-size: 0.82rem;
	color: var(--mist);
}

.astrarium-wuxing__tri b {
	font-size: 1.5rem;
	line-height: 1;
	color: var(--brass-soft);
}

/* Teinte du symbole selon l'élément. */
.astrarium-wuxing__tri[data-el="Bois"]  b { color: #7fae8c; }
.astrarium-wuxing__tri[data-el="Feu"]   b { color: #c2603f; }
.astrarium-wuxing__tri[data-el="Terre"] b { color: #c9a227; }
.astrarium-wuxing__tri[data-el="Métal"] b { color: #cfd6e6; }
.astrarium-wuxing__tri[data-el="Eau"]   b { color: #6f9fd0; }

/* ==========================================================================
   Cinq Éléments (balancier) & analyses de couple (v1.4)
   ========================================================================== */

.astrarium-wxbal {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 0.9rem;
	min-height: 130px;
	margin: 0 0 1.6rem;
	padding: 1rem 0 0;
}

.astrarium-wxbal__col {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.3rem;
	width: 3.4rem;
}

.astrarium-wxbal__bar {
	width: 1.5rem;
	border-radius: 6px 6px 2px 2px;
	background: var(--brass);
	box-shadow: inset 0 0 8px rgba(0,0,0,0.25);
}

.astrarium-wxbal__col b {
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.3rem;
	color: var(--parchment);
}

.astrarium-wxbal__lab {
	font-size: 0.72rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: var(--mist);
}

.astrarium-wxbal__col[data-el="Bois"]  .astrarium-wxbal__bar { background: #7fae8c; }
.astrarium-wxbal__col[data-el="Feu"]   .astrarium-wxbal__bar { background: #c2603f; }
.astrarium-wxbal__col[data-el="Terre"] .astrarium-wxbal__bar { background: #c9a227; }
.astrarium-wxbal__col[data-el="Métal"] .astrarium-wxbal__bar { background: #cfd6e6; }
.astrarium-wxbal__col[data-el="Eau"]   .astrarium-wxbal__bar { background: #6f9fd0; }

/* Couples ------------------------------------------------------------------ */

.astrarium-couple {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.2rem;
	margin: 0 0 1.6rem;
	flex-wrap: wrap;
}

.astrarium-couple__side {
	flex: 1 1 0;
	min-width: 120px;
	max-width: 200px;
	padding: 1rem 1.1rem;
	border: 1px solid var(--line);
	border-radius: 12px;
	background: rgba(27, 35, 64, 0.5);
	text-align: center;
	font-size: 0.92rem;
	line-height: 1.5;
	color: var(--parchment);
}

.astrarium-couple__side b {
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.5rem;
	color: var(--brass-soft);
}

.astrarium-couple__link {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.1rem;
	color: var(--brass-soft);
	font-size: 1.4rem;
}

.astrarium-couple__link span {
	font-family: 'Cormorant Garamond', serif;
	font-size: 2rem;
	line-height: 1;
}

/* ==========================================================================
   Image & titre du résultat, séparateur de couple (v1.4)
   ========================================================================== */

.astrarium-result__image {
	display: block;
	width: 100%;
	max-height: 280px;
	object-fit: cover;
	border-radius: 14px;
	border: 1px solid var(--line);
	box-shadow: 0 18px 50px -30px rgba(0,0,0,0.8);
	margin: 0 0 1.5rem;
}

.astrarium-result__title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(1.6rem, 3vw, 2.2rem);
	font-weight: 600;
	color: var(--brass-soft);
	margin: 0 0 1rem;
	text-align: center;
	letter-spacing: 0.01em;
}

.astrarium-form__divider {
	display: flex;
	align-items: center;
	gap: 0.9rem;
	grid-column: 1 / -1;
	margin: 0.6rem 0 0.2rem;
	color: var(--brass-soft);
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.15rem;
	letter-spacing: 0.04em;
}

.astrarium-form__divider::before,
.astrarium-form__divider::after {
	content: "";
	flex: 1;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--line), transparent);
}

/* Bouton PDF (secondaire). */
.astrarium-result__pdf {
	background: transparent;
	border: 1px solid var(--brass);
	color: var(--brass-soft);
	padding: 0.65rem 1.3rem;
	border-radius: 999px;
	font-family: 'Spectral', serif;
	letter-spacing: 0.04em;
	cursor: pointer;
	transition: background 0.2s, color 0.2s;
}

.astrarium-result__pdf:hover {
	background: var(--brass);
	color: #0b1020;
}

/* ==========================================================================
   Export PDF : impression isolée du résultat (déclenchée par .astrarium-printing)
   ========================================================================== */

@media print {
	@page { margin: 1.5cm; }

	/* On masque toute la page, puis on ne révèle que l'analyse. */
	body.astrarium-printing { visibility: hidden !important; background: #fff !important; }
	body.astrarium-printing .astrarium-result,
	body.astrarium-printing .astrarium-result * { visibility: visible !important; }

	/* Chrome de l'interface masqué (catalogue, formulaire, attente, boutons…). */
	body.astrarium-printing .astrarium__sky,
	body.astrarium-printing .astrarium__head,
	body.astrarium-printing .astrarium__catalog,
	body.astrarium-printing .astrarium-form,
	body.astrarium-printing .astrarium-placeholder,
	body.astrarium-printing .astrarium-loader,
	body.astrarium-printing .astrarium-result__actions,
	body.astrarium-printing .astrarium-result__image,
	body.astrarium-printing .astrarium-fullpage-stage__foot { display: none !important; }

	/* On neutralise les conteneurs (deux colonnes, scène) : flux normal, pleine
	   largeur, fond blanc — ce qui permet au texte de se paginer sur plusieurs pages
	   (le position:absolute précédent tronquait l'analyse). */
	body.astrarium-printing .astrarium,
	body.astrarium-printing .astrarium__workspace,
	body.astrarium-printing .astrarium.is-consulting .astrarium__workspace,
	body.astrarium-printing .astrarium-fullpage-stage,
	body.astrarium-printing .astrarium-stage,
	body.astrarium-printing .astrarium-result {
		display: block !important;
		position: static !important;
		width: 100% !important;
		max-width: 100% !important;
		min-height: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		background: #fff !important;
		color: #2a2520 !important;
		box-shadow: none !important;
		border: none !important;
		overflow: visible !important;
		height: auto !important;
		filter: none !important;
		backdrop-filter: none !important;
		transform: none !important;
		animation: none !important;
	}
	body.astrarium-printing .astrarium-fullpage-stage::before,
	body.astrarium-printing .astrarium-fullpage-stage::after { display: none !important; }

	body.astrarium-printing .astrarium-result__title {
		color: #8a6d1f !important;
		text-align: center;
		margin: 0 0 1rem;
	}
	body.astrarium-printing .astrarium-result__body h2,
	body.astrarium-printing .astrarium-result__body h3,
	body.astrarium-printing .astrarium-result__body strong { color: #6b4f12 !important; }
	body.astrarium-printing .astrarium-result__body,
	body.astrarium-printing .astrarium-result__body p,
	body.astrarium-printing .astrarium-result__body li { color: #2a2520 !important; }

	/* Plus aucune plaque sombre : les visuels passent sur fond clair, texte sombre. */
	body.astrarium-printing .astrarium-result__draw {
		background: #faf4e6 !important;
		border: 1px solid #d8cdb0 !important;
		border-radius: 12px;
		padding: 1rem !important;
		color: #2a2520 !important;
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
		break-inside: avoid;
	}
	body.astrarium-printing .astrarium-result__draw * { color: #2a2520 !important; }
	body.astrarium-printing .astrarium-couple__side { background: #fff !important; border-color: #d8cdb0 !important; }

	/* Roue du thème en clair pour l'impression. */
	body.astrarium-printing .astrarium-wheel__disc { fill: #f4ecd6 !important; }
	body.astrarium-printing .astrarium-wheel circle { stroke: rgba(150,110,30,.55) !important; }
	body.astrarium-printing .astrarium-wheel__sign   { fill: #6b4f12 !important; }
	body.astrarium-printing .astrarium-wheel__house  { fill: #5d5443 !important; }
	body.astrarium-printing .astrarium-wheel__planet { fill: #2b2620 !important; }
	body.astrarium-printing .astrarium-wheel__angle  { fill: #8a6a14 !important; }
	body.astrarium-printing .astrarium-wheel__tick   { stroke: rgba(60,45,10,.3) !important; }

	body.astrarium-printing .astrarium-result__disclaimer {
		color: #6b6356 !important;
		border-top: 1px solid #d8cdb0;
		margin-top: 1.2rem;
		padding-top: 0.8rem;
	}
}

/* ==========================================================================
   Catégories, explications & nouveaux visuels de couple (v1.5)
   ========================================================================== */

.astrarium__catalog {
	display: flex;
	flex-direction: column;
	gap: 2.4rem;
	margin-top: 1.6rem;
}

.astrarium__category-head {
	margin: 0 0 1rem;
	padding-bottom: 0.6rem;
	border-bottom: 1px solid var(--line);
}

.astrarium__category-title {
	font-family: 'Cormorant Garamond', serif;
	font-size: clamp(1.4rem, 2.6vw, 1.9rem);
	font-weight: 600;
	color: var(--brass-soft);
	margin: 0 0 0.2rem;
	letter-spacing: 0.01em;
}

.astrarium__category-blurb {
	margin: 0;
	font-size: 0.92rem;
	color: var(--mist);
	max-width: 60ch;
}

/* Panneau « Origine & calcul » dans le formulaire. */
.astrarium-about {
	margin: 0 0 1.4rem;
	border: 1px solid var(--line);
	border-radius: 12px;
	background: rgba(27, 35, 64, 0.45);
	overflow: hidden;
}

.astrarium-about > summary {
	cursor: pointer;
	list-style: none;
	padding: 0.8rem 1.1rem;
	font-family: 'Spectral', serif;
	font-size: 0.92rem;
	letter-spacing: 0.03em;
	color: var(--brass-soft);
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.astrarium-about > summary::-webkit-details-marker { display: none; }

.astrarium-about > summary::before {
	content: "✦";
	font-size: 0.8rem;
	opacity: 0.8;
	transition: transform 0.2s;
}

.astrarium-about[open] > summary::before { transform: rotate(90deg); }

.astrarium-about p {
	margin: 0;
	padding: 0 1.1rem 0.9rem;
	font-size: 0.9rem;
	line-height: 1.6;
	color: var(--parchment);
}

.astrarium-about p:first-of-type { padding-top: 0.2rem; }

.astrarium-about__tag {
	display: inline-block;
	font-size: 0.7rem;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: var(--brass);
	margin-right: 0.4rem;
}

/* Note sous le bandeau de couple. */
.astrarium-couple__note {
	width: 100%;
	text-align: center;
	margin: 0.6rem 0 0;
	font-size: 0.82rem;
	color: var(--mist);
	font-style: italic;
}

/* Thème composite. */
.astrarium-comp { margin: 0 0 1.6rem; text-align: center; }

.astrarium-comp__cap {
	font-family: 'Cormorant Garamond', serif;
	font-size: 1.2rem;
	color: var(--brass-soft);
	margin: 0 0 0.8rem;
}

.astrarium-comp__grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.8rem;
}

.astrarium-comp__cell {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.2rem;
	min-width: 5rem;
	padding: 0.8rem 0.9rem;
	border: 1px solid var(--line);
	border-radius: 12px;
	background: rgba(27, 35, 64, 0.5);
}

.astrarium-comp__sym {
	font-size: 1.5rem;
	color: var(--brass-soft);
	line-height: 1;
}

.astrarium-comp__sign {
	font-size: 0.82rem;
	color: var(--parchment);
}

/* Compatibilité Wu Xing : deux balanciers côte à côte. */
.astrarium-couple-bal {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 1rem;
	flex-wrap: wrap;
	margin: 0 0 1.6rem;
}

.astrarium-couple-bal__plus {
	font-family: 'Cormorant Garamond', serif;
	font-size: 2rem;
	color: var(--brass-soft);
	padding-bottom: 1.4rem;
}

.astrarium-wxbal--mini { min-height: 92px; gap: 0.5rem; margin: 0; }
.astrarium-wxbal--mini .astrarium-wxbal__col { width: 2.5rem; }
.astrarium-wxbal--mini .astrarium-wxbal__bar { width: 1.1rem; }
.astrarium-wxbal--mini .astrarium-wxbal__col b { font-size: 1rem; }
.astrarium-wxbal--mini .astrarium-wxbal__lab { font-size: 0.6rem; }

/* ==========================================================================
   Thème clair « Parchemin » (v1.5.1) — meilleure lisibilité
   Activé via .astrarium--parchment et body.astrarium-appearance-parchment
   ========================================================================== */

.astrarium--parchment {
	--ink:        #efe6cf;
	--night:      #f7f0df;
	--night-2:    #fbf6ea;
	--parchment:  #2b2620; /* sert désormais de couleur de texte (encre) */
	--mist:       #6a6150;
	--brass:      #9a7d1e;
	--brass-soft: #7c5f10;
	--ember:      #b1502f;
	--line:       rgba(120, 90, 30, 0.30);

	color: #2b2620;
	background:
		radial-gradient(120% 80% at 50% -10%, rgba(154,125,30,0.10), transparent 60%),
		linear-gradient(160deg, #faf4e6 0%, #efe6cf 100%);
	border-color: rgba(120, 90, 30, 0.30);
	box-shadow: 0 24px 60px -42px rgba(70, 50, 10, 0.5);
}

.astrarium--parchment .astrarium__sky { opacity: 0; }

/* Panneaux clairs */
.astrarium--parchment .astrarium-card,
.astrarium--parchment .astrarium-couple__side,
.astrarium--parchment .astrarium-comp__cell,
.astrarium--parchment .astrarium-about,
.astrarium--parchment .astrarium-numgrid__cell,
.astrarium--parchment .astrarium-geo__cell {
	background: #fbf6ea;
	border-color: rgba(120, 90, 30, 0.28);
	color: #2b2620;
}

.astrarium--parchment .astrarium-card__label { color: #221d16; }
.astrarium--parchment .astrarium-card__tag,
.astrarium--parchment .astrarium__category-blurb,
.astrarium--parchment .astrarium__lede { color: #5d5443; }
.astrarium--parchment .astrarium-card__glyph,
.astrarium--parchment .astrarium-form__glyph { color: #9a7d1e; }

/* Champs de formulaire lisibles */
.astrarium--parchment .astrarium-field input,
.astrarium--parchment .astrarium-field textarea {
	background: #fffdf6;
	border-color: rgba(120, 90, 30, 0.35);
	color: #2b2620;
}
.astrarium--parchment .astrarium-field input::placeholder,
.astrarium--parchment .astrarium-field textarea::placeholder { color: #9a907c; }
.astrarium--parchment .astrarium-field__label { color: #4a4234; }

/* Titres */
.astrarium--parchment .astrarium__title,
.astrarium--parchment .astrarium__category-title,
.astrarium--parchment .astrarium-result__title,
.astrarium--parchment .astrarium-result__body h2,
.astrarium--parchment .astrarium-result__body h3,
.astrarium--parchment .astrarium-result__body h4 { color: #6b4f12; }
.astrarium--parchment .astrarium__eyebrow { color: #9a7d1e; }
.astrarium--parchment .astrarium-result__body,
.astrarium--parchment .astrarium-result__body p,
.astrarium--parchment .astrarium-result__body li { color: #2b2620; }
.astrarium--parchment .astrarium-result__body strong { color: #5c4410; }

/* Les visuels (roue, cartes, runes) gardent une plaque sombre pour rester nets */
.astrarium--parchment .astrarium-result__draw {
	background: #11162a;
	border: 1px solid rgba(120, 90, 30, 0.35);
	border-radius: 14px;
	padding: 1.1rem;
	margin-bottom: 1.4rem;
	color: #e9e4d4; /* texte clair par défaut sur la plaque sombre */
}

/* Tout texte de visuel reposant sur cette plaque sombre doit rester clair,
   sinon les variables du thème Parchemin le rendraient sombre (illisible). */
.astrarium--parchment .astrarium-result__draw .astrarium-table td,
.astrarium--parchment .astrarium-result__draw .astrarium-table th,
.astrarium--parchment .astrarium-result__draw .astrarium-wxbal__col b,
.astrarium--parchment .astrarium-result__draw .astrarium-couple__side,
.astrarium--parchment .astrarium-result__draw .astrarium-comp__sign,
.astrarium--parchment .astrarium-result__draw .astrarium-tarot__name { color: #f1ead9; }

.astrarium--parchment .astrarium-result__draw .astrarium-table__house,
.astrarium--parchment .astrarium-result__draw .astrarium-table__notice,
.astrarium--parchment .astrarium-result__draw .astrarium-numgrid__cell,
.astrarium--parchment .astrarium-result__draw .astrarium-geo__cell,
.astrarium--parchment .astrarium-result__draw .astrarium-wuxing__tri,
.astrarium--parchment .astrarium-result__draw .astrarium-wxbal__lab,
.astrarium--parchment .astrarium-result__draw .astrarium-couple__note,
.astrarium--parchment .astrarium-result__draw .astrarium-tarot__sense,
.astrarium--parchment .astrarium-result__draw .astrarium-hex__caption span { color: #b9c2dc; }

.astrarium--parchment .astrarium-result__draw .astrarium-tarot__star { color: #e6cd7e; }
.astrarium--parchment .astrarium-result__draw .astrarium-hex__line--yang { background: #c9a227; }
.astrarium--parchment .astrarium-result__draw .astrarium-hex__line--yin {
	background: linear-gradient(90deg, #c9a227 0 42%, transparent 42% 58%, #c9a227 58% 100%);
}

/* Astrolabe d'attente : laiton très foncé et traits épais pour être net sur fond clair */
.astrarium--parchment .astrarium-loader__text { color: #5d420e; }
.astrarium--parchment .astrarium-astrolabe__ring { border-width: 3px; }
.astrarium--parchment .astrarium-astrolabe__ring--outer { border-color: #6b4f12; }
.astrarium--parchment .astrarium-astrolabe__ring--mid {
	border-color: #4a360c;
	border-top-color: transparent;
	border-bottom-color: transparent;
}
.astrarium--parchment .astrarium-astrolabe__ring--inner {
	border-color: #7a5a12;
	border-left-color: transparent;
	border-right-color: transparent;
}
.astrarium--parchment .astrarium-astrolabe__core {
	background: radial-gradient(circle, #8a6a14, #3d2c08);
	box-shadow: 0 0 14px 2px rgba(90, 65, 14, 0.55);
}

/* ==========================================================================
   Thème astral (roue) en Parchemin : disque clair, glyphes sombres, plaque claire.
   La roue est sombre par défaut (thème Nuit) ; ici on la bascule en clair pour
   qu'elle soit lisible et cohérente avec la page, sans plaque sombre.
   ========================================================================== */
.astrarium--parchment .astrarium-result__draw:has(.astrarium-wheel) {
	background: #faf4e6;
	border-color: rgba(120, 90, 30, 0.30);
	color: #2b2620;
}
.astrarium--parchment .astrarium-wheel__disc { fill: #f4ecd6; }
.astrarium--parchment .astrarium-wheel circle { stroke: rgba(150, 110, 30, 0.55); }
.astrarium--parchment .astrarium-wheel__sign   { fill: #6b4f12; }
.astrarium--parchment .astrarium-wheel__house  { fill: #5d5443; }
.astrarium--parchment .astrarium-wheel__planet { fill: #2b2620; }
.astrarium--parchment .astrarium-wheel__angle  { fill: #8a6a14; }
.astrarium--parchment .astrarium-wheel__tick   { stroke: rgba(60, 45, 10, 0.30); }

/* Tableau des positions sur la plaque claire : texte sombre. */
.astrarium--parchment .astrarium-result__draw:has(.astrarium-wheel) .astrarium-table td,
.astrarium--parchment .astrarium-result__draw:has(.astrarium-wheel) .astrarium-table th { color: #2b2620; }
.astrarium--parchment .astrarium-result__draw:has(.astrarium-wheel) .astrarium-table__sym { color: #6b4f12; }
.astrarium--parchment .astrarium-result__draw:has(.astrarium-wheel) .astrarium-table__house,
.astrarium--parchment .astrarium-result__draw:has(.astrarium-wheel) .astrarium-table__notice { color: #5d5443; }
.astrarium--parchment .astrarium-result__draw:has(.astrarium-wheel) .astrarium-table thead th { border-bottom-color: rgba(120, 90, 30, 0.3); }

/* Pastilles & badges : encre sombre lisible */
.astrarium--parchment .astrarium-badge {
	background: #fbf6ea;
	border-color: rgba(120, 90, 30, 0.3);
	color: #2b2620;
}

/* Séparateur et notes */
.astrarium--parchment .astrarium-couple__note,
.astrarium--parchment .astrarium-about p { color: #5d5443; }
.astrarium--parchment .astrarium-about p strong { color: #6b4f12; }

/* Mode plein écran clair : fond de page crème, sans étoiles */
body.astrarium-appearance-parchment {
	background:
		radial-gradient(1100px 640px at 50% -18%, rgba(154,125,30,0.10), transparent 60%),
		linear-gradient(160deg, #f6eedb 0%, #efe6cf 60%, #e9dcc0 100%) !important;
	color: #2b2620;
}
body.astrarium-appearance-parchment .astrarium-fullpage-stage::before,
body.astrarium-appearance-parchment .astrarium-fullpage-stage::after { opacity: 0 !important; }
/* Surcharge fiable : on s'appuie sur la classe du conteneur (toujours rendue),
   pas seulement sur celle du body, pour que le panneau soit clair même si la
   classe du body manque (cache, thèmes particuliers). */
.astrarium-fullpage-active .astrarium.astrarium--parchment,
body.astrarium-appearance-parchment .astrarium-fullpage-active .astrarium {
	background:
		radial-gradient(120% 80% at 50% -10%, rgba(154,125,30,0.10), transparent 60%),
		linear-gradient(160deg, #faf4e6 0%, #f2e9d3 100%);
	box-shadow: 0 30px 80px -50px rgba(70, 50, 10, 0.45);
}
.astrarium-fullpage-active .astrarium.astrarium--parchment { backdrop-filter: none; }
body.astrarium-appearance-parchment .astrarium-fullpage-stage__foot { color: #6a6150; }
body.astrarium-appearance-parchment .astrarium-fullpage-stage__foot a { color: #8a6a14; }

/* Nine Star Ki — rangée de badges (étoile + Kua) et directions ------------- */
.astrarium-badge-row { display: flex; gap: 1rem; flex-wrap: wrap; justify-content: center; }
.astrarium-kua-dirs {
	margin: 1rem 0 0;
	text-align: center;
	font-size: 0.95rem;
	color: #b9c2dc;
}
.astrarium-kua-dirs strong { color: #e6cd7e; font-weight: 500; }

/* ==========================================================================
   Guide encyclopédique — [astrarium_guide]
   ========================================================================== */
.astrarium-guide__category { position: relative; margin: 0 0 2.6rem; }
.astrarium-guide__category:last-of-type { margin-bottom: 1rem; }

.astrarium-guide__entry {
	position: relative;
	margin: 1.1rem 0;
	padding: 1.5rem 1.6rem;
	background: linear-gradient(180deg, rgba(27,35,64,0.55), rgba(19,26,48,0.55));
	border: 1px solid var(--line);
	border-radius: 14px;
}
.astrarium-guide__entry-head {
	display: flex; align-items: center; gap: 1rem;
	padding-bottom: 0.9rem; margin-bottom: 1rem;
	border-bottom: 1px solid var(--line);
}
.astrarium-guide__glyph { width: 42px; height: 42px; color: var(--brass); flex: none; }
.astrarium-guide__glyph svg { width: 100%; height: 100%; }
.astrarium-guide__name {
	margin: 0;
	font-family: 'Cormorant Garamond', serif;
	font-weight: 600; font-size: 1.55rem; line-height: 1.05;
	color: var(--brass-soft);
}
.astrarium-guide__tag { margin: 0.2rem 0 0; color: var(--mist); font-size: 0.92rem; }

.astrarium-guide__section { margin: 0.9rem 0 0; }
.astrarium-guide__section-title {
	margin: 0 0 0.25rem;
	font-size: 0.74rem;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--brass);
}
.astrarium-guide__section p { margin: 0; color: var(--parchment); }

/* Thème Parchemin : panneaux clairs */
.astrarium--parchment .astrarium-guide__entry {
	background: #fbf6ea;
	border-color: rgba(120, 90, 30, 0.28);
}
.astrarium--parchment .astrarium-guide__name { color: #6b4f12; }
.astrarium--parchment .astrarium-guide__tag { color: #5d5443; }
.astrarium--parchment .astrarium-guide__glyph { color: #9a7d1e; }
.astrarium--parchment .astrarium-guide__section-title { color: #8a6a14; }
.astrarium--parchment .astrarium-guide__section p { color: #2b2620; }

@media (max-width: 600px) {
	.astrarium-guide__entry { padding: 1.2rem 1.1rem; }
}

/* ==========================================================================
   Espace de travail deux colonnes (saisie à gauche, attente/résultat à droite)
   Activé par la classe .is-consulting sur le conteneur (ajoutée en JS).
   ========================================================================== */
.astrarium__workspace { position: relative; }

.astrarium.is-consulting .astrarium__workspace {
	display: flex;
	gap: 1.8rem;
	align-items: flex-start;
}

/* Colonne gauche : le formulaire choisi, pleine largeur de sa colonne. */
.astrarium.is-consulting .astrarium__workspace > .astrarium-form {
	flex: 0 0 41%;
	max-width: none;
	margin: 0;
}

/* Colonne droite : la scène (attente puis résultat). */
.astrarium.is-consulting .astrarium__workspace > .astrarium-stage {
	flex: 1 1 0;
	min-width: 0;
	align-self: stretch;
}

/* Message d'attente affiché avant la consultation. */
.astrarium-placeholder {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	gap: 0.9rem;
	min-height: 300px;
	height: 100%;
	padding: 2rem 1.6rem;
	border: 1px dashed var(--line);
	border-radius: 16px;
	color: var(--mist);
}
.astrarium-placeholder__mark {
	font-size: 2.4rem;
	line-height: 1;
	color: var(--brass-soft);
	opacity: 0.85;
}
.astrarium-placeholder__text { max-width: 34ch; margin: 0; font-size: 0.98rem; }

/* Empilement sur écran étroit : formulaire au-dessus, scène en dessous. */
@media (max-width: 860px) {
	.astrarium.is-consulting .astrarium__workspace { flex-direction: column; gap: 1.4rem; }
	.astrarium.is-consulting .astrarium__workspace > .astrarium-form { flex-basis: auto; width: 100%; }
	.astrarium-placeholder { min-height: 200px; }
}
