/* ==========================================================================
   ZayActu — Espace Professionnel (Avis d'Obsèques)
   Application autonome, sobre et rassurante. Palette proche de la marque
   ZayActu mais assourdie et sans rouge : c'est un outil de travail pour
   des professionnels du funéraire, pas une page d'actualité.
   ========================================================================== */

:root {
	--app-navy: #16216B;
	--app-navy-deep: #0d1442;
	--app-gold: #b8944a;
	--app-bg: #f5f4f1;
	--app-surface: #ffffff;
	--app-border: #e4e1da;
	--app-text: #1f2430;
	--app-text-muted: #6b7080;
	--app-success: #2D9E7A;
	--app-danger: #b23b3b;
}

body.zayobs-app-body {
	margin: 0;
	background: var(--app-bg);
	color: var(--app-text);
	font-family: 'Barlow', sans-serif;
	-webkit-font-smoothing: antialiased;
}
body.zayobs-app-body * { box-sizing: border-box; }
body.zayobs-app-body a { color: inherit; }

/* -------------------------------------------------------------------- */
/* Écran de connexion / inscription — panneau fractionné                */
/* -------------------------------------------------------------------- */
.zayobs-auth-screen {
	min-height: 100vh;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

.zayobs-auth-brand {
	background-image:
		linear-gradient(160deg, rgba(13,20,66,.58) 0%, rgba(9,15,51,.82) 65%, rgba(6,10,36,.92) 100%),
		url('../images/bougie-connexion.png');
	background-size: cover;
	background-position: center;
	color: #f1efe8;
	padding: 40px 44px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	position: relative;
	overflow: hidden;
}
.zayobs-auth-brand::after {
	content: '';
	position: absolute;
	right: -120px;
	bottom: -120px;
	width: 360px;
	height: 360px;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(184,148,74,.28) 0%, rgba(184,148,74,0) 70%);
	pointer-events: none;
}
.zayobs-auth-brand__mark {
	position: absolute;
	top: 32px;
	right: 40px;
	text-align: right;
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 1.3rem;
	letter-spacing: .04em;
	text-transform: uppercase;
	z-index: 2;
}
.zayobs-auth-brand__mark span { color: var(--app-gold); }
.zayobs-auth-brand__quote { font-family: 'Barlow Condensed', sans-serif; font-size: 2.1rem; line-height: 1.25; max-width: 420px; font-weight: 500; position: relative; z-index: 1; }
.zayobs-auth-brand__foot { font-size: .85rem; color: #b9bcd4; position: relative; z-index: 1; margin-top: 14px; }

.zayobs-auth-form-side {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 40px 24px;
}
.zayobs-auth-card {
	width: 100%;
	max-width: 400px;
}
.zayobs-auth-card h1 {
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 1.8rem;
	color: var(--app-navy);
	margin: 0 0 6px;
}
.zayobs-auth-card__subtitle { color: var(--app-text-muted); margin: 0 0 28px; font-size: .95rem; }

.zayobs-auth-card label { display: block; font-weight: 600; margin-bottom: 5px; font-size: .88rem; }
.zayobs-auth-card input {
	width: 100%;
	padding: 11px 14px;
	border: 1px solid var(--app-border);
	border-radius: 6px;
	font-size: 15px;
	margin-bottom: 16px;
	font-family: inherit;
}
.zayobs-auth-card input:focus { outline: 2px solid var(--app-gold); outline-offset: 1px; border-color: var(--app-gold); }

.zayobs-auth-submit {
	width: 100%;
	background: var(--app-navy);
	color: #fff;
	border: none;
	padding: 13px;
	border-radius: 6px;
	font-weight: 700;
	font-size: 1rem;
	cursor: pointer;
	margin-top: 6px;
}
.zayobs-auth-submit:hover { background: #0f1750; }

.zayobs-auth-links { margin-top: 20px; font-size: .88rem; color: var(--app-text-muted); display: flex; justify-content: space-between; }
.zayobs-auth-links a { color: var(--app-navy); font-weight: 600; text-decoration: none; }
.zayobs-auth-links a:hover { text-decoration: underline; }

.zayobs-auth-error {
	background: #fbe9e9;
	color: var(--app-danger);
	padding: 12px 14px;
	border-radius: 6px;
	font-size: .9rem;
	margin-bottom: 20px;
	font-weight: 600;
}
.zayobs-auth-success {
	background: #dff3e8;
	color: var(--app-success);
	padding: 12px 14px;
	border-radius: 6px;
	font-size: .9rem;
	margin-bottom: 20px;
	font-weight: 600;
}

@media (max-width: 860px) {
	.zayobs-auth-screen { grid-template-columns: 1fr; }
	.zayobs-auth-brand { padding: 28px 24px; min-height: 260px; }
	.zayobs-auth-brand__mark { top: 20px; right: 24px; font-size: 1.1rem; }
	.zayobs-auth-brand__quote { font-size: 1.5rem; }
}

/* -------------------------------------------------------------------- */
/* États d'accès (compte non pro / en attente de validation)             */
/* Le tableau de bord lui-même a désormais son propre shell complet,     */
/* stylé dans zayobs-dashboard.css.                                      */
/* -------------------------------------------------------------------- */
.zayobs-app-empty-state {
	max-width: 480px;
	margin: 80px auto;
	text-align: center;
	background: var(--app-surface);
	border: 1px solid var(--app-border);
	border-radius: 10px;
	padding: 40px 32px;
}
.zayobs-app-empty-state h2 { font-family: 'Barlow Condensed', sans-serif; color: var(--app-navy); }
.zayobs-app-empty-state p { color: var(--app-text-muted); margin-bottom: 20px; }

/* Le formulaire d'inscription (Sprint 1) est réutilisé tel quel dans la
   carte de connexion ci-dessus : on aligne juste ses styles sur ceux des
   champs de la carte pour une cohérence visuelle parfaite. */
.zayobs-auth-card .zayobs-form-inscription { max-width: none; }
.zayobs-auth-card .zayobs-form-inscription input {
	border-radius: 6px;
	margin-bottom: 4px;
}
.zayobs-auth-card .zayobs-form-inscription button[type="submit"] {
	width: 100%;
	border-radius: 6px;
	padding: 13px;
	margin-top: 10px;
}
