/* =========================================================
   UNI-B Annuaire — feuille dédiée au tableau de bord ("Mon espace UNI-B")
   Version 2.2.0 — nettoyage : ce fichier ne contenait plus une seule
   couche de styles mais cinq, ajoutées les unes sur les autres au fil
   des versions (1.0.8 → 1.1.0 → 1.1.1 → 1.1.2 → 1.1.3 → 1.1.4 → V2),
   chacune redéclarant les mêmes classes en !important pour neutraliser
   la précédente. Ce fichier les remplace toutes par une seule couche,
   sans rien changer visuellement. Merci de ne PAS empiler une nouvelle
   couche par-dessus celle-ci : éditer la règle existante à la place.
   ========================================================= */

/* ---------------------------------------------------------
   Isolation contre le thème WordPress actif — nécessaire car le
   thème peut définir ses propres styles pour des balises génériques
   (h1-h3, p, a, ul, img) qui s'infiltreraient sinon dans le dashboard.
   --------------------------------------------------------- */
body.uniba-dashboard-page .uniba-app,
body.uniba-dashboard-page .uniba-app *,
body.uniba-dashboard-page .uniba-app *::before,
body.uniba-dashboard-page .uniba-app *::after { box-sizing: border-box !important; }
body.uniba-dashboard-page .uniba-app ul,
body.uniba-dashboard-page .uniba-app ol { list-style: none !important; margin: 0 !important; padding: 0 !important; }
body.uniba-dashboard-page .uniba-app h1,
body.uniba-dashboard-page .uniba-app h2,
body.uniba-dashboard-page .uniba-app h3,
body.uniba-dashboard-page .uniba-app p { background: none !important; text-shadow: none !important; }
body.uniba-dashboard-page .uniba-app img,
body.uniba-dashboard-page .uniba-app svg { max-width: none !important; }
body.uniba-dashboard-page .uniba-app a { text-decoration: none !important; box-shadow: none !important; }

/* ---------------------------------------------------------
   Variables propres au dashboard (palette alignée sur la charte du
   site : gris ardoise #494949, or #D6AE18 — voir uniba-style.css).
   --------------------------------------------------------- */
body.uniba-dashboard-page .uniba-dashboard-shell {
	--unib-sidebar: #494949;
	--unib-text: #494949;
	--unib-muted: #6b6f73;
	--unib-border: #e5e9ed;
	--unib-bg: #f6f7f8;
}

/* ---------------------------------------------------------
   Ossature : sidebar + colonne de contenu
   --------------------------------------------------------- */
body.uniba-dashboard-page .uniba-dashboard-shell {
	width: 100% !important;
	max-width: 1500px !important;
	margin: 0 auto !important;
	padding: 24px 28px 48px !important;
	display: flex !important;
	align-items: flex-start !important;
	gap: 24px !important;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
	color: var(--unib-text) !important;
}

body.uniba-dashboard-page .uniba-app-sidebar {
	flex: 0 0 230px !important;
	width: 230px !important;
	min-width: 230px !important;
	background: var(--unib-sidebar) !important;
	color: #fff !important;
}

@media (min-width: 821px) {
	body.uniba-dashboard-page .uniba-app-sidebar {
		position: sticky !important;
		top: 20px !important;
	}
}

body.uniba-dashboard-page .uniba-app-col {
	flex: 1 1 auto !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
}

body.uniba-dashboard-page .uniba-app-main {
	width: 100% !important;
	max-width: none !important;
	min-width: 0 !important;
}

body.uniba-dashboard-page .uniba-panel {
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	box-sizing: border-box !important;
}

body.uniba-dashboard-page .uniba-panel[hidden] { display: none !important; }

/* Les panneaux à contenu riche portent la carte blanche ; "accueil" a
   son propre fond (bandeau de bienvenue) et n'en a pas besoin. */
body.uniba-dashboard-page .uniba-panel[data-panel="entreprises"],
body.uniba-dashboard-page .uniba-panel[data-panel="statistiques"],
body.uniba-dashboard-page .uniba-panel[data-panel="profil"],
body.uniba-dashboard-page .uniba-panel[data-panel="parametres"] {
	background: #fff !important;
	border: 1px solid #e5e7eb !important;
	border-radius: 16px !important;
	padding: 30px !important;
	box-shadow: 0 6px 24px rgba(30,42,56,.06) !important;
	box-sizing: border-box !important;
}

/* ---------------------------------------------------------
   Sidebar : navigation, pied de sidebar, aide
   --------------------------------------------------------- */
body.uniba-dashboard-page .uniba-sidebar-toggle { display: none; }

body.uniba-dashboard-page .uniba-nav-item {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	padding: 11px 14px !important;
	margin: 0 0 2px !important;
	border-radius: 9px !important;
	color: rgba(255,255,255,.82) !important;
	font-size: .92rem !important;
	font-weight: 500 !important;
}

body.uniba-dashboard-page .uniba-nav-item:hover {
	background: rgba(255,255,255,.08) !important;
	color: #fff !important;
}

body.uniba-dashboard-page .uniba-nav-item.is-active {
	background: #d6ae18 !important;
	color: #2a2a2a !important;
	font-weight: 700 !important;
}

body.uniba-dashboard-page .uniba-sidebar-footer {
	margin-top: 18px !important;
	padding-top: 14px !important;
	border-top: 1px solid rgba(255,255,255,.12) !important;
}

body.uniba-dashboard-page .uniba-sidebar-help {
	margin-top: 18px !important;
	padding: 16px !important;
	background: rgba(255,255,255,.06) !important;
	border-radius: 12px !important;
	font-size: .82rem !important;
	color: rgba(255,255,255,.75) !important;
}

body.uniba-dashboard-page .uniba-sidebar-help p { margin: 0 0 10px !important; }
body.uniba-dashboard-page .uniba-sidebar-help strong { display: flex !important; align-items: center !important; gap: 6px !important; color: #fff !important; }

/* ---------------------------------------------------------
   En-tête commun des panneaux "Mes entreprises" / "Statistiques"
   --------------------------------------------------------- */
body.uniba-dashboard-page .uniba-panel-header {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 16px !important;
	margin: 0 0 26px !important;
	padding: 0 0 20px !important;
	border-bottom: 1px solid #edf0f2 !important;
}

body.uniba-dashboard-page .uniba-panel-header h2 {
	display: flex !important;
	align-items: center !important;
	gap: 9px !important;
	margin: 0 !important;
	font-size: 1.55rem !important;
	line-height: 1.25 !important;
	font-weight: 650 !important;
	color: #494949 !important;
}

body.uniba-dashboard-page .uniba-panel-header .uniba-pill {
	padding: 6px 10px !important;
	background: #f5f6f7 !important;
	border: 1px solid #e3e6e9 !important;
	border-radius: 999px !important;
	font-size: .76rem !important;
	font-weight: 700 !important;
	color: #5d6670 !important;
	white-space: nowrap !important;
}

/* ---------------------------------------------------------
   Panneau : Mes entreprises
   --------------------------------------------------------- */
body.uniba-dashboard-page .uniba-entreprises-toolbar {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 24px !important;
	margin: 0 0 18px !important;
	padding: 18px 20px !important;
	background: #f8f9fa !important;
	border: 1px solid #e8ebee !important;
	border-radius: 12px !important;
}

body.uniba-dashboard-page .uniba-entreprises-section-title {
	margin: 0 0 4px !important;
	font-size: 1rem !important;
	font-weight: 700 !important;
	color: #494949 !important;
}

body.uniba-dashboard-page .uniba-entreprises-toolbar .uniba-dash-hint {
	margin: 0 !important;
	font-size: .83rem !important;
}

/* Le champ de recherche réutilise le style commun des barres de
   recherche du dashboard (uniba-header-search). */
body.uniba-dashboard-page .uniba-header-search {
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
	flex: 0 1 400px !important;
	width: 100% !important;
	max-width: 400px !important;
	height: 42px !important;
	margin: 0 !important;
	padding: 0 14px !important;
	background: #f5f6f7 !important;
	border: 1px solid #e2e6e9 !important;
	border-radius: 10px !important;
	box-sizing: border-box !important;
}

body.uniba-dashboard-page .uniba-header-search input {
	flex: 1 1 auto !important;
	min-width: 0 !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	font-size: .86rem !important;
	color: #494949 !important;
}

body.uniba-dashboard-page .uniba-entreprises-list {
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
	margin: 0 0 22px !important;
}

body.uniba-dashboard-page .uniba-entreprise-row {
	display: flex !important;
	align-items: center !important;
	gap: 15px !important;
	min-height: 76px !important;
	padding: 15px 16px !important;
	background: #fff !important;
	border: 1px solid #e5e8eb !important;
	border-radius: 11px !important;
	box-sizing: border-box !important;
}

body.uniba-dashboard-page .uniba-entreprise-row:hover {
	border-color: #d6ae18 !important;
	box-shadow: 0 5px 16px rgba(30,42,56,.06) !important;
}

body.uniba-dashboard-page .uniba-entreprise-info { flex: 1 1 auto !important; min-width: 0 !important; }
body.uniba-dashboard-page .uniba-entreprise-info strong { display: block !important; margin: 0 0 3px !important; font-size: .98rem !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-entreprise-info .uniba-dash-hint { margin: 0 0 7px !important; font-size: .8rem !important; }

body.uniba-dashboard-page .uniba-status-badge {
	display: inline-flex !important;
	align-items: center !important;
	padding: 3px 8px !important;
	margin-right: 6px !important;
	border-radius: 999px !important;
	font-size: .7rem !important;
	font-weight: 700 !important;
	background: #f1f2f3 !important;
	color: #5d6670 !important;
}

body.uniba-dashboard-page .uniba-status-publish { background: #e6f7ec !important; color: #17643a !important; }
body.uniba-dashboard-page .uniba-status-pending { background: #fdf3e0 !important; color: #9a6a00 !important; }
body.uniba-dashboard-page .uniba-status-draft   { background: #f1f2f3 !important; color: #5d6670 !important; }

body.uniba-dashboard-page .uniba-entreprise-actions { display: flex !important; align-items: center !important; gap: 7px !important; flex: 0 0 auto !important; }
body.uniba-dashboard-page .uniba-entreprise-actions .uniba-btn { min-width: 78px !important; justify-content: center !important; }

body.uniba-dashboard-page .uniba-dash-empty,
body.uniba-dashboard-page .uniba-entreprises-empty {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: center !important;
	min-height: 190px !important;
	margin: 0 0 20px !important;
	padding: 30px 24px !important;
	background: #fafbfc !important;
	border: 1px dashed #d9dee3 !important;
	border-radius: 14px !important;
	text-align: center !important;
	box-sizing: border-box !important;
}

body.uniba-dashboard-page .uniba-dash-empty-icon { margin: 0 0 12px !important; color: #cbd1d6 !important; }
body.uniba-dashboard-page .uniba-dash-empty-icon .uniba-icon { width: 42px !important; height: 42px !important; }
body.uniba-dashboard-page .uniba-dash-empty p { margin: 4px 0 !important; }
body.uniba-dashboard-page .uniba-dash-empty p:first-of-type { font-size: 1rem !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-dash-hint { max-width: 620px; font-size: .84rem !important; line-height: 1.5 !important; color: #6b6f73 !important; }

body.uniba-dashboard-page .uniba-add-entreprise-card {
	display: grid !important;
	grid-template-columns: 44px minmax(0,1fr) auto !important;
	align-items: center !important;
	gap: 16px !important;
	padding: 20px 22px !important;
	background: #fffaf0 !important;
	border: 1px solid #eadfa9 !important;
	border-radius: 14px !important;
	box-sizing: border-box !important;
}

body.uniba-dashboard-page .uniba-add-entreprise-icon {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 44px !important;
	height: 44px !important;
	border-radius: 11px !important;
	background: #d6ae18 !important;
	color: #494949 !important;
}

body.uniba-dashboard-page .uniba-add-entreprise-content h3 { margin: 0 0 4px !important; font-size: 1rem !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-add-entreprise-content p { margin: 0 !important; font-size: .82rem !important; line-height: 1.5 !important; color: #6b6f73 !important; }
body.uniba-dashboard-page .uniba-add-entreprise-card > .uniba-btn { white-space: nowrap !important; margin: 0 !important; }

/* ---------------------------------------------------------
   Panneau : Tableau de bord (accueil)
   --------------------------------------------------------- */
body.uniba-dashboard-page .uniba-welcome-banner {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 24px !important;
	padding: 32px !important;
	background: linear-gradient(135deg, #494949, #5c5c5c) !important;
	border-radius: 16px !important;
	color: #fff !important;
}

body.uniba-dashboard-page .uniba-welcome-text h1 { margin: 0 0 6px !important; font-size: 1.5rem !important; color: #fff !important; }
body.uniba-dashboard-page .uniba-welcome-title { margin: 0 0 10px !important; font-size: 1rem !important; font-weight: 600 !important; color: #f1d98a !important; }
body.uniba-dashboard-page .uniba-welcome-text p { color: rgba(255,255,255,.82) !important; max-width: 560px !important; }
body.uniba-dashboard-page .uniba-welcome-dot { display: inline-block !important; width: 8px !important; height: 8px !important; margin-left: 8px !important; border-radius: 50% !important; background: #9a9fa5 !important; }
body.uniba-dashboard-page .uniba-welcome-dot.is-live { background: #3ecf7e !important; }
body.uniba-dashboard-page .uniba-welcome-illustration { flex-shrink: 0 !important; opacity: .5 !important; }
body.uniba-dashboard-page .uniba-welcome-illustration .uniba-icon { width: 64px !important; height: 64px !important; }

/* ---------------------------------------------------------
   Panneau : Statistiques — en-tête + sélecteur de période
   --------------------------------------------------------- */
body.uniba-dashboard-page .uniba-stats-header { display: flex !important; align-items: flex-end !important; justify-content: space-between !important; gap: 20px !important; margin: 0 0 24px !important; flex-wrap: wrap !important; }
body.uniba-dashboard-page .uniba-stats-eyebrow { display: block !important; margin: 0 0 6px !important; font-size: .72rem !important; font-weight: 700 !important; letter-spacing: .08em !important; text-transform: uppercase !important; color: #9a7b00 !important; }
body.uniba-dashboard-page .uniba-stats-header h2 { margin: 0 0 5px !important; font-size: 1.65rem !important; line-height: 1.2 !important; font-weight: 650 !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-stats-header .uniba-dash-hint { margin: 0 !important; max-width: 520px !important; font-size: .86rem !important; }
body.uniba-dashboard-page .uniba-stats-period-form { display: flex !important; align-items: center !important; flex-shrink: 0 !important; gap: 8px !important; padding: 9px 14px !important; background: #fff !important; border: 1px solid #e5e7eb !important; border-radius: 10px !important; box-shadow: 0 1px 2px rgba(30,42,56,.05) !important; }
body.uniba-dashboard-page .uniba-stats-period-form .uniba-icon { width: 16px !important; height: 16px !important; color: #6b6f73 !important; }
body.uniba-dashboard-page .uniba-stats-period-form select { border: 0 !important; outline: 0 !important; background: transparent !important; font-size: .86rem !important; font-weight: 600 !important; color: #494949 !important; cursor: pointer !important; }

/* KPI (indicateurs clés) */
body.uniba-dashboard-page .uniba-kpi-grid { display: grid !important; grid-template-columns: repeat(4, minmax(0,1fr)) !important; gap: 16px !important; width: 100% !important; margin: 0 0 20px !important; }
body.uniba-dashboard-page .uniba-kpi-card { display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 4px !important; min-width: 0 !important; min-height: 150px !important; padding: 20px !important; background: #fff !important; border: 1px solid #e6e9ec !important; border-radius: 14px !important; box-shadow: 0 3px 14px rgba(30,42,56,.045) !important; box-sizing: border-box !important; }
body.uniba-dashboard-page .uniba-kpi-card--soon { background: #fbfbfa !important; }
body.uniba-dashboard-page .uniba-kpi-icon { display: flex !important; flex: 0 0 auto !important; align-items: center !important; justify-content: center !important; width: 40px !important; height: 40px !important; margin: 0 0 13px !important; border-radius: 10px !important; }
body.uniba-dashboard-page .uniba-kpi-icon--blue   { background: rgba(214,174,24,.15) !important; color: #a3830c !important; }
body.uniba-dashboard-page .uniba-kpi-icon--purple { background: #f1e9fb !important; color: #7c3aed !important; }
body.uniba-dashboard-page .uniba-kpi-icon--teal   { background: #e3f6f1 !important; color: #0f9d78 !important; }
body.uniba-dashboard-page .uniba-kpi-icon--amber  { background: rgba(214,174,24,.15) !important; color: #9a7b00 !important; }
body.uniba-dashboard-page .uniba-kpi-label { display: block !important; margin: 0 0 3px !important; font-size: .84rem !important; font-weight: 600 !important; color: #59636d !important; }
body.uniba-dashboard-page .uniba-kpi-value { display: block !important; margin-top: 2px !important; font-size: 1.9rem !important; line-height: 1.1 !important; font-weight: 750 !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-kpi-delta { display: inline-flex !important; align-items: center !important; gap: 3px !important; margin-top: 7px !important; padding: 2px 8px !important; border-radius: 999px !important; font-size: .78rem !important; font-weight: 700 !important; }
body.uniba-dashboard-page .uniba-kpi-delta.is-up   { background: #e6f7ec !important; color: #17643a !important; }
body.uniba-dashboard-page .uniba-kpi-delta.is-down { background: #fbe9e9 !important; color: #8a1f1f !important; }
body.uniba-dashboard-page .uniba-kpi-hint,
body.uniba-dashboard-page .uniba-kpi-soon { margin-top: auto !important; font-size: .76rem !important; color: #8a919a !important; }
body.uniba-dashboard-page .uniba-kpi-soon { display: inline-flex !important; align-items: center !important; gap: 5px !important; padding: 4px 10px !important; background: #f1f2f3 !important; border-radius: 999px !important; font-weight: 600 !important; color: #9a9fa5 !important; }
body.uniba-dashboard-page .uniba-kpi-soon .uniba-icon { width: 12px !important; height: 12px !important; }

/* Grille principale : graphique + activité | colonne latérale */
body.uniba-dashboard-page .uniba-stats-grid { display: grid !important; grid-template-columns: minmax(0,2fr) minmax(280px,1fr) !important; gap: 18px !important; width: 100% !important; align-items: start !important; }
body.uniba-dashboard-page .uniba-stats-col-main,
body.uniba-dashboard-page .uniba-stats-col-side { display: flex !important; flex-direction: column !important; gap: 18px !important; min-width: 0 !important; }
body.uniba-dashboard-page .uniba-stats-chart-card,
body.uniba-dashboard-page .uniba-stats-activity-card,
body.uniba-dashboard-page .uniba-stats-soon-card,
body.uniba-dashboard-page .uniba-top-fiches-card {
	width: 100% !important;
	padding: 22px !important;
	background: #fff !important;
	border: 1px solid #e6e9ec !important;
	border-radius: 14px !important;
	box-shadow: 0 3px 14px rgba(30,42,56,.04) !important;
	box-sizing: border-box !important;
}
body.uniba-dashboard-page .uniba-stats-chart-card { overflow: hidden !important; }
body.uniba-dashboard-page .uniba-stats-section-heading { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 20px !important; margin: 0 0 22px !important; }
body.uniba-dashboard-page .uniba-stats-section-heading h3 { margin: 0 0 4px !important; font-size: 1rem !important; font-weight: 700 !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-stats-section-heading p { margin: 0 !important; font-size: .8rem !important; color: #6b6f73 !important; }
body.uniba-dashboard-page .uniba-stats-legend { display: inline-flex !important; align-items: center !important; gap: 6px !important; font-size: .78rem !important; font-weight: 600 !important; color: #495057 !important; white-space: nowrap !important; }
body.uniba-dashboard-page .uniba-legend-dot { display: inline-block !important; width: 8px !important; height: 8px !important; border-radius: 50% !important; background: #d6ae18 !important; }

/* Graphique en ligne (SVG natif, sans dépendance externe) */
body.uniba-dashboard-page .uniba-linechart { width: 100% !important; min-width: 0 !important; }
body.uniba-dashboard-page .uniba-linechart-svg { display: block !important; width: 100% !important; height: 220px !important; overflow: visible !important; }
body.uniba-dashboard-page .uniba-linechart-area { fill: rgba(184,147,15,.1) !important; stroke: none !important; }
body.uniba-dashboard-page .uniba-linechart-line { fill: none !important; stroke: #b8930f !important; stroke-width: 2.5 !important; stroke-linejoin: round !important; stroke-linecap: round !important; }
body.uniba-dashboard-page .uniba-linechart-dot  { fill: #fff !important; stroke: #b8930f !important; stroke-width: 2 !important; }
body.uniba-dashboard-page .uniba-linechart-labels { display: flex !important; justify-content: space-between !important; margin-top: 8px !important; padding: 0 4px !important; font-size: .74rem !important; color: #8a919a !important; }

/* Activité récente */
body.uniba-dashboard-page .uniba-stats-activity-card h3,
body.uniba-dashboard-page .uniba-stats-soon-card h3,
body.uniba-dashboard-page .uniba-top-fiches-card h3 { display: flex !important; align-items: center !important; gap: 7px !important; margin: 0 0 16px !important; font-size: 1rem !important; font-weight: 700 !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-activity-summary { margin: 0 !important; font-size: .95rem !important; color: #495057 !important; }
body.uniba-dashboard-page .uniba-activity-summary strong { font-size: 1.3rem !important; font-weight: 750 !important; color: #494949 !important; }

/* Carte "bientôt disponible" (répartition des visiteurs) */
body.uniba-dashboard-page .uniba-stats-soon-icon { display: flex !important; align-items: center !important; justify-content: center !important; width: 38px !important; height: 38px !important; margin-bottom: 12px !important; border-radius: 10px !important; background: #f1f2f3 !important; color: #9a9fa5 !important; }

/* Fiches les plus consultées */
body.uniba-dashboard-page .uniba-top-fiches-list { display: flex !important; flex-direction: column !important; gap: 12px !important; }
body.uniba-dashboard-page .uniba-top-fiches-list li { display: flex !important; align-items: center !important; gap: 10px !important; }
body.uniba-dashboard-page .uniba-top-fiche-avatar { display: flex !important; flex-shrink: 0 !important; align-items: center !important; justify-content: center !important; width: 34px !important; height: 34px !important; border-radius: 9px !important; overflow: hidden !important; background: #f1f2f3 !important; font-size: .82rem !important; font-weight: 700 !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-top-fiche-avatar img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
body.uniba-dashboard-page .uniba-top-fiche-name { flex: 1 !important; min-width: 0 !important; overflow: hidden !important; font-size: .86rem !important; font-weight: 600 !important; color: #494949 !important; white-space: nowrap !important; text-overflow: ellipsis !important; }
body.uniba-dashboard-page .uniba-top-fiche-name:hover { color: #a3830c !important; }
body.uniba-dashboard-page .uniba-top-fiche-views { flex-shrink: 0 !important; font-size: .78rem !important; color: #8a919a !important; }

/* Bandeau d'amélioration (upsell) */
body.uniba-dashboard-page .uniba-stats-upsell { padding: 20px !important; background: linear-gradient(135deg,#fffdf1,#faf6e2) !important; border: 1px solid #eadfa9 !important; border-radius: 14px !important; box-sizing: border-box !important; }
body.uniba-dashboard-page .uniba-stats-upsell-icon { display: flex !important; align-items: center !important; justify-content: center !important; width: 36px !important; height: 36px !important; margin-bottom: 12px !important; border-radius: 9px !important; background: #d6ae18 !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-stats-upsell h3 { margin: 0 0 6px !important; font-size: .98rem !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-stats-upsell p { margin: 0 0 14px !important; font-size: .82rem !important; line-height: 1.5 !important; color: #7a6a2e !important; }
body.uniba-dashboard-page .uniba-stats-upsell .uniba-btn { width: 100% !important; justify-content: center !important; }

body.uniba-dashboard-page .uniba-stats-note { display: flex !important; align-items: flex-start !important; gap: 8px !important; margin-top: 18px !important; padding: 11px 13px !important; background: #f8f9fa !important; border: 1px solid #e9ecef !important; border-radius: 9px !important; font-size: .74rem !important; line-height: 1.5 !important; color: #6b6f73 !important; box-sizing: border-box !important; }

/* ---------------------------------------------------------
   Panneaux : Profil & Paramètres
   --------------------------------------------------------- */
body.uniba-dashboard-page .uniba-profile-identity { display: flex !important; align-items: center !important; gap: 16px !important; padding: 18px 20px !important; margin: 0 0 26px !important; background: #f8f9fa !important; border: 1px solid #e8ebee !important; border-radius: 12px !important; }
body.uniba-dashboard-page .uniba-profile-avatar { flex-shrink: 0 !important; width: 64px !important; height: 64px !important; border-radius: 50% !important; overflow: hidden !important; display: flex !important; }
body.uniba-dashboard-page .uniba-profile-avatar img { width: 64px !important; height: 64px !important; border-radius: 50% !important; display: block !important; object-fit: cover !important; }
body.uniba-dashboard-page .uniba-profile-identity strong { display: block !important; margin-bottom: 3px !important; font-size: 1.02rem !important; color: #494949 !important; }

body.uniba-dashboard-page .uniba-settings-form,
body.uniba-dashboard-page .uniba-settings-card { max-width: 560px !important; }
body.uniba-dashboard-page .uniba-settings-form-title { margin: 0 0 16px !important; font-size: .95rem !important; font-weight: 700 !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-settings-form label { display: block !important; margin: 0 0 16px !important; font-size: .84rem !important; font-weight: 600 !important; color: #495057 !important; }
body.uniba-dashboard-page .uniba-settings-form label input { display: block !important; width: 100% !important; margin-top: 6px !important; padding: 11px 13px !important; font-size: .92rem !important; font-weight: 400 !important; color: #333 !important; background: #fff !important; border: 1px solid #dcdfe3 !important; border-radius: 9px !important; box-sizing: border-box !important; }
body.uniba-dashboard-page .uniba-settings-form label input:focus { outline: none !important; border-color: #d6ae18 !important; box-shadow: 0 0 0 3px rgba(214,174,24,.15) !important; }
body.uniba-dashboard-page .uniba-settings-form label input:disabled { background: #f3f4f5 !important; color: #8a919a !important; }
body.uniba-dashboard-page .uniba-form-grid-2 { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 0 14px !important; }
body.uniba-dashboard-page .uniba-form-grid-2 label { margin: 0 0 16px !important; }

body.uniba-dashboard-page .uniba-settings-card { background: #fff !important; border: 1px solid #e7eaed !important; border-radius: 14px !important; padding: 22px !important; margin: 0 0 18px !important; box-sizing: border-box !important; }
body.uniba-dashboard-page .uniba-settings-card h3 { display: flex !important; align-items: center !important; gap: 8px !important; margin: 0 0 6px !important; font-size: 1rem !important; font-weight: 700 !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-settings-card > p.uniba-dash-hint { margin: 0 0 18px !important; }
body.uniba-dashboard-page .uniba-settings-card .uniba-settings-form { margin-top: 18px !important; }
body.uniba-dashboard-page .uniba-settings-card .uniba-kpi-soon { margin: 2px 0 10px !important; }

body.uniba-dashboard-page .uniba-settings-danger { border-color: #f3d9d9 !important; }
body.uniba-dashboard-page .uniba-settings-danger h3 { color: #8a1f1f !important; }
body.uniba-dashboard-page .uniba-danger-row { display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 20px !important; padding: 16px 0 !important; border-top: 1px solid #f1f2f3 !important; }
body.uniba-dashboard-page .uniba-danger-row:first-of-type { border-top: none !important; padding-top: 10px !important; }
body.uniba-dashboard-page .uniba-danger-row strong { display: block !important; margin-bottom: 2px !important; font-size: .9rem !important; color: #494949 !important; }
body.uniba-dashboard-page .uniba-danger-row .uniba-btn,
body.uniba-dashboard-page .uniba-danger-row button { flex-shrink: 0 !important; }
body.uniba-dashboard-page .uniba-btn-danger { background: #c0392b !important; color: #fff !important; border: 1px solid #c0392b !important; }
body.uniba-dashboard-page .uniba-btn-danger:hover { background: #a3301f !important; border-color: #a3301f !important; }
body.uniba-dashboard-page .uniba-delete-form { margin-top: 14px !important; padding: 16px !important; background: #fdf3f2 !important; border: 1px solid #f3d9d9 !important; border-radius: 10px !important; }
body.uniba-dashboard-page .uniba-delete-form p { margin: 0 0 10px !important; font-size: .86rem !important; color: #7a2b2b !important; }
body.uniba-dashboard-page .uniba-delete-form input[type="text"] { display: block !important; width: 100% !important; max-width: 280px !important; margin: 0 0 14px !important; padding: 10px 12px !important; border: 1px solid #e3b9b9 !important; border-radius: 8px !important; box-sizing: border-box !important; }
body.uniba-dashboard-page .uniba-delete-form-actions { display: flex !important; gap: 10px !important; }

/* ---------------------------------------------------------
   Notices (succès / erreur)
   --------------------------------------------------------- */
body.uniba-dashboard-page .uniba-notice { display: flex !important; align-items: center !important; gap: 8px !important; }

/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */
@media (max-width: 1100px) {
	body.uniba-dashboard-page .uniba-kpi-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
	body.uniba-dashboard-page .uniba-stats-grid { grid-template-columns: 1fr !important; }
}

@media (max-width: 820px) {
	body.uniba-dashboard-page .uniba-dashboard-shell { flex-direction: column !important; padding: 12px 12px 32px !important; }
	body.uniba-dashboard-page .uniba-app-sidebar { flex-basis: 100% !important; width: 100% !important; min-width: 0 !important; position: static !important; }
	body.uniba-dashboard-page .uniba-app-col { width: 100% !important; }
	body.uniba-dashboard-page .uniba-entreprises-toolbar,
	body.uniba-dashboard-page .uniba-stats-header { align-items: stretch !important; flex-direction: column !important; }
	body.uniba-dashboard-page .uniba-header-search { width: 100% !important; max-width: none !important; }
}

@media (max-width: 600px) {
	body.uniba-dashboard-page .uniba-panel[data-panel="entreprises"],
	body.uniba-dashboard-page .uniba-panel[data-panel="statistiques"],
	body.uniba-dashboard-page .uniba-panel[data-panel="profil"],
	body.uniba-dashboard-page .uniba-panel[data-panel="parametres"] { padding: 18px !important; }
	body.uniba-dashboard-page .uniba-kpi-grid { grid-template-columns: 1fr !important; }
	body.uniba-dashboard-page .uniba-panel-header h2 { font-size: 1.35rem !important; }
	body.uniba-dashboard-page .uniba-add-entreprise-card { grid-template-columns: 44px minmax(0,1fr) !important; }
	body.uniba-dashboard-page .uniba-add-entreprise-card > .uniba-btn { grid-column: 1 / -1 !important; justify-self: start !important; margin-left: 58px !important; }
	body.uniba-dashboard-page .uniba-entreprise-row { align-items: flex-start !important; flex-wrap: wrap !important; }
	body.uniba-dashboard-page .uniba-entreprise-actions { width: 100% !important; margin-left: 55px !important; }
	body.uniba-dashboard-page .uniba-form-grid-2 { grid-template-columns: 1fr !important; }
	body.uniba-dashboard-page .uniba-danger-row { flex-direction: column !important; align-items: flex-start !important; }
}
