/* =====================================================================
   PCM Hosting — skin Roundcube (surcouche appliquée par-dessus Elastic)
   Palette host.pcmagency.fr : bleu #009AFF / #1966FF / #6298fe, navy #08132e
   Police : Poppins. Ne modifie jamais Elastic ; se superpose seulement.
   ===================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap');

:root {
	--pcm-blue:      #009AFF;
	--pcm-blue-deep: #1966FF;
	--pcm-blue-soft: #6298fe;
	--pcm-blue-pale: #c4e3ff;
	--pcm-navy:      #08132e;
	--pcm-ink:       #181B1F;
	--pcm-grad:      linear-gradient(135deg,#1966FF 0%,#009AFF 55%,#6298fe 100%);
	--pcm-grad-dark: linear-gradient(160deg,#08132e 0%,#0b1f47 48%,#0a2e6b 100%);
	--pcm-radius:    14px;
	--pcm-radius-lg: 20px;
}

/* ---------- Police globale ---------- */
html, body, button, input, select, textarea,
.form-control, #layout, #taskmenu, .listing, .propform,
.header-title, h1, h2, h3, .username {
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif !important;
}

/* =====================================================================
   ÉCRAN DE CONNEXION
   ===================================================================== */
body.task-login {
	background: var(--pcm-grad-dark) !important;
	position: relative;
}
body.task-login::before {
	content: "";
	position: fixed; inset: 0;
	background:
		radial-gradient(60% 55% at 78% 12%, rgba(0,154,255,.35), transparent 60%),
		radial-gradient(50% 50% at 12% 90%, rgba(98,152,254,.25), transparent 60%);
	pointer-events: none;
}
body.task-login #layout,
body.task-login #layout-content {
	background: transparent !important;
	box-shadow: none !important;
}
body.task-login #layout-content {
	display: flex; flex-direction: column;
	align-items: center; justify-content: center;
	min-height: 100vh; padding: 24px; position: relative; z-index: 1;
}
body.task-login #logo {
	display: block; width: 60%; max-width: 300px; height: auto;
	margin: 0 auto 30px;
	filter: drop-shadow(0 10px 34px rgba(0,0,0,.4));
}
body.task-login #login-form {
	background: rgba(255,255,255,.92);
	-webkit-backdrop-filter: blur(16px) saturate(150%);
	backdrop-filter: blur(16px) saturate(150%);
	border: 1px solid rgba(255,255,255,.65);
	border-radius: var(--pcm-radius-lg);
	box-shadow: 0 34px 90px -24px rgba(4,12,35,.65);
	padding: 36px 32px; width: 100%; max-width: 410px;
}
body.task-login #login-form .form-group,
body.task-login #login-form label {
	color: var(--pcm-navy) !important;
	font-weight: 600;
}
body.task-login #login-form .form-control,
body.task-login #login-form input.form-control {
	border: 1px solid #d9e2ef !important;
	border-radius: var(--pcm-radius) !important;
	padding: 12px 14px !important; height: auto !important;
	font-size: 15px; background: #fff !important; color: var(--pcm-ink) !important;
	box-shadow: none !important;
}
body.task-login #login-form .form-control:focus {
	border-color: var(--pcm-blue) !important;
	box-shadow: 0 0 0 3px rgba(0,154,255,.18) !important;
}
body.task-login #login-form button.btn,
body.task-login #login-form .btn-primary,
body.task-login #login-form button[type="submit"] {
	background: var(--pcm-grad) !important;
	border: none !important; color: #fff !important;
	border-radius: var(--pcm-radius) !important;
	padding: 13px 18px !important; font-weight: 700 !important;
	width: 100%; margin-top: 10px;
	box-shadow: 0 14px 30px -10px rgba(0,154,255,.65);
	transition: transform .15s ease, box-shadow .15s ease, filter .15s ease;
}
body.task-login #login-form button.btn:hover {
	transform: translateY(-1px); filter: brightness(1.03);
	box-shadow: 0 18px 38px -10px rgba(0,154,255,.8);
}
body.task-login #login-footer {
	color: rgba(255,255,255,.78) !important;
	margin-top: 24px; text-align: center; font-size: 13px;
}
body.task-login #login-footer a { color: var(--pcm-blue-pale) !important; }

/* =====================================================================
   CHROME DE L'APPLICATION
   ===================================================================== */
/* Menu des tâches (barre de navigation) */
#taskmenu {
	background: var(--pcm-grad-dark) !important;
	border: none !important;
}
#taskmenu a,
#taskmenu a .inner {
	color: rgba(255,255,255,.74) !important;
}
#taskmenu a:hover,
#taskmenu a.selected,
#taskmenu a.selected .inner {
	color: #fff !important;
}
#taskmenu a.selected {
	background: rgba(255,255,255,.12) !important;
	box-shadow: inset 3px 0 0 var(--pcm-blue);
}
#taskmenu a.selected .inner::before,
#taskmenu a:hover .inner::before { color: #fff !important; }

/* Boutons primaires dans toute l'app */
.btn-primary,
button.btn.btn-primary,
input.btn-primary,
a.btn-primary {
	background: var(--pcm-grad) !important;
	border: none !important; color: #fff !important;
	border-radius: var(--pcm-radius) !important;
	font-weight: 600 !important;
}
.btn-primary:hover { filter: brightness(1.05); }

/* Liens & accents */
a { color: var(--pcm-blue-deep); }
a:hover { color: var(--pcm-blue); }

/* Éléments sélectionnés dans les listes (messages, dossiers) */
.listing li.selected > a,
.listing tr.selected > td,
table.listing tbody tr.selected td {
	background-color: rgba(0,154,255,.12) !important;
	color: var(--pcm-navy) !important;
}
.listing li.selected > a::before { background: var(--pcm-blue) !important; }

/* En-têtes de panneaux arrondis */
#layout-content > .header,
#layout-sidebar > .header,
#layout-list > .header {
	border-radius: 0;
}

/* Cases à cocher / interrupteurs accent bleu */
input:checked + .custom-control-label::before,
.custom-control-input:checked ~ .custom-control-label::before {
	background-color: var(--pcm-blue) !important;
	border-color: var(--pcm-blue) !important;
}

/* Barre de progression / quota */
#quotadisplay .count,
.quota-widget .bar { color: var(--pcm-blue) !important; }
