/* =========================================================
   AIDE AUX DEVOIRS — NICHE PILLARS
   Fichier conseillé : /css2026/aad_niche_pillars.css
   Scope unique : .aadnp_page
   ========================================================= */

.aadnp_page,
.aadnp_page *{
	box-sizing:border-box!important;
}

.aadnp_page{
	--aadnp_bg:#ffffff;
	--aadnp_ink:#0f172a;
	--aadnp_muted:#475569;
	--aadnp_soft:#64748b;
	--aadnp_line:rgba(15,23,42,.10);
	--aadnp_line2:rgba(15,23,42,.06);
	--aadnp_blue:#0ea5e9;
	--aadnp_blue_dark:#0369a1;
	--aadnp_green:#22c55e;
	--aadnp_yellow:#facc15;
	--aadnp_orange:#fb923c;
	--aadnp_shadow:0 18px 44px rgba(15,23,42,.08);
	--aadnp_shadow2:0 24px 60px rgba(15,23,42,.12);
	width:100%!important;
	max-width:1180px!important;
	margin:0 auto 44px!important;
	padding:0 18px!important;
	font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;
	color:var(--aadnp_ink)!important;
	line-height:1.68!important;
}

.aadnp_page a{
	color:var(--aadnp_blue_dark)!important;
	font-weight:850!important;
	text-decoration:underline!important;
	text-decoration-thickness:1px!important;
	text-underline-offset:3px!important;
}

.aadnp_page a:hover{
	color:#075985!important;
}

.aadnp_hero{
	position:relative!important;
	overflow:hidden!important;
	margin:22px 0 28px!important;
	padding:34px!important;
	border-radius:32px!important;
	background:
		radial-gradient(circle at 8% 14%, rgba(14,165,233,.18), transparent 34%),
		radial-gradient(circle at 92% 12%, rgba(250,204,21,.24), transparent 31%),
		radial-gradient(circle at 84% 90%, rgba(34,197,94,.16), transparent 30%),
		linear-gradient(135deg,#ffffff 0%,#f0f9ff 56%,#fff7ed 100%)!important;
	border:1px solid rgba(14,165,233,.18)!important;
	box-shadow:var(--aadnp_shadow2)!important;
}

.aadnp_kicker{
	display:inline-flex!important;
	align-items:center!important;
	width:fit-content!important;
	margin:0 0 14px!important;
	padding:7px 12px!important;
	border-radius:999px!important;
	background:#0f172a!important;
	color:#ffffff!important;
	font-size:12px!important;
	line-height:1!important;
	font-weight:950!important;
	text-transform:uppercase!important;
	letter-spacing:.055em!important;
}

.aadnp_hero h2,
.aadnp_section h2,
.aadnp_faq h2{
	margin:0 0 14px!important;
	color:#0f172a!important;
	background:transparent!important;
	font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;
	font-size:clamp(26px,3vw,40px)!important;
	line-height:1.14!important;
	font-weight:950!important;
	letter-spacing:-.035em!important;
	text-align:left!important;
}

.aadnp_hero p,
.aadnp_section p,
.aadnp_faq p{
	margin:0 0 14px!important;
	color:var(--aadnp_muted)!important;
	font-size:16.5px!important;
	line-height:1.72!important;
}

.aadnp_hero p{
	max-width:960px!important;
	font-size:18px!important;
}

.aadnp_hero p.aadnp_kicker{
	color:#ffffff!important;
	text-align: center!important;
}
	
	
.aadnp_summary_grid,
.aadnp_grid_3,
.aadnp_grid_2,
.aadnp_steps,
.aadnp_links_grid{
	display:grid!important;
	gap:16px!important;
	margin:20px 0 0!important;
}

.aadnp_summary_grid,
.aadnp_grid_3{
	grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

.aadnp_grid_2{
	grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

.aadnp_steps{
	grid-template-columns:repeat(4,minmax(0,1fr))!important;
	counter-reset:aadnp_step!important;
}

.aadnp_links_grid{
	grid-template-columns:repeat(4,minmax(0,1fr))!important;
}

.aadnp_card,
.aadnp_step,
.aadnp_link_card{
	position:relative!important;
	padding:20px!important;
	border-radius:22px!important;
	background:#ffffff!important;
	border:1px solid var(--aadnp_line)!important;
	box-shadow:0 12px 28px rgba(15,23,42,.06)!important;
}

.aadnp_card strong,
.aadnp_step strong,
.aadnp_link_card strong{
	display:block!important;
	margin:0 0 7px!important;
	color:#0f172a!important;
	font-size:16px!important;
	line-height:1.25!important;
	font-weight:950!important;
}

.aadnp_card span,
.aadnp_step span,
.aadnp_link_card span{
	display:block!important;
	color:var(--aadnp_soft)!important;
	font-size:14.5px!important;
	line-height:1.55!important;
}

.aadnp_step{
	padding-top:50px!important;
}

.aadnp_step::before{
	counter-increment:aadnp_step!important;
	content:counter(aadnp_step)!important;
	position:absolute!important;
	left:18px!important;
	top:16px!important;
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:26px!important;
	height:26px!important;
	border-radius:999px!important;
	background:var(--aadnp_blue_dark)!important;
	color:#ffffff!important;
	font-size:13px!important;
	font-weight:950!important;
}

.aadnp_section{
	margin:28px 0!important;
	padding:30px!important;
	border-radius:30px!important;
	background:#ffffff!important;
	border:1px solid var(--aadnp_line)!important;
	box-shadow:var(--aadnp_shadow)!important;
}

.aadnp_section h3{
	margin:22px 0 8px!important;
	color:#172033!important;
	background:transparent!important;
	font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;
	font-size:21px!important;
	line-height:1.25!important;
	font-weight:950!important;
	text-align:left!important;
}

.aadnp_section ul,
.aadnp_section ol{
	margin:12px 0 0!important;
	padding-left:22px!important;
}

.aadnp_section li{
	margin:0 0 8px!important;
	color:#475569!important;
	font-size:16px!important;
	line-height:1.62!important;
}

.aadnp_highlight{
	background:
		radial-gradient(circle at 8% 12%, rgba(14,165,233,.10), transparent 34%),
		linear-gradient(135deg,#ffffff 0%,#f8fafc 58%,#f0f9ff 100%)!important;
}

.aadnp_warning{
	background:linear-gradient(135deg,#ffffff 0%,#fff7ed 58%,#f8fafc 100%)!important;
	border-color:rgba(251,146,60,.24)!important;
}

.aadnp_success{
	background:
		radial-gradient(circle at 92% 12%, rgba(34,197,94,.12), transparent 34%),
		linear-gradient(135deg,#ffffff 0%,#f8fafc 58%,#ecfdf5 100%)!important;
	border-color:rgba(34,197,94,.20)!important;
}

.aadnp_callout{
	margin:22px 0!important;
	padding:18px 20px!important;
	border-radius:20px!important;
	background:#0f172a!important;
	color:#ffffff!important;
	box-shadow:0 18px 44px rgba(15,23,42,.18)!important;
}

.aadnp_callout strong{
	display:block!important;
	margin:0 0 8px!important;
	color:#ffffff!important;
	font-size:17px!important;
	font-weight:950!important;
}

.aadnp_callout p{
	margin:0!important;
	color:rgba(255,255,255,.86)!important;
}

.aadnp_table_wrap{
	width:100%!important;
	overflow-x:auto!important;
	-webkit-overflow-scrolling:touch!important;
	margin:20px 0!important;
	border-radius:22px!important;
	box-shadow:0 14px 34px rgba(15,23,42,.08)!important;
}

.aadnp_table{
	width:100%!important;
	min-width:760px!important;
	border-collapse:separate!important;
	border-spacing:0!important;
	background:#ffffff!important;
	border:1px solid var(--aadnp_line)!important;
	border-radius:22px!important;
	overflow:hidden!important;
}

.aadnp_table th,
.aadnp_table td{
	padding:14px 16px!important;
	border:0!important;
	border-bottom:1px solid var(--aadnp_line2)!important;
	text-align:left!important;
	vertical-align:top!important;
	color:#475569!important;
	font-size:15px!important;
	line-height:1.55!important;
}

.aadnp_table th{
	color:#0f172a!important;
	background:#f8fafc!important;
	font-weight:950!important;
	font-size:12px!important;
	text-transform:uppercase!important;
	letter-spacing:.05em!important;
}

.aadnp_table td:first-child{
	color:#0f172a!important;
	font-weight:850!important;
}

.aadnp_related{
	margin:30px 0!important;
	padding:26px!important;
	border-radius:28px!important;
	background:linear-gradient(135deg,#0f172a 0%,#172033 60%,#0c4a6e 100%)!important;
	box-shadow:0 22px 54px rgba(15,23,42,.20)!important;
}

.aadnp_related h2,
.aadnp_related p{
	color:#ffffff!important;
}

.aadnp_related p{
	color:rgba(255,255,255,.84)!important;
}

.aadnp_related .aadnp_link_card{
	background:rgba(255,255,255,.08)!important;
	border-color:rgba(255,255,255,.14)!important;
	box-shadow:none!important;
}

.aadnp_related .aadnp_link_card strong{
	color:#ffffff!important;
}

.aadnp_related .aadnp_link_card span{
	color:rgba(255,255,255,.76)!important;
}

.aadnp_related a{
	color:#7dd3fc!important;
}

.aadnp_cta{
	display:inline-flex!important;
	align-items:center!important;
	justify-content:center!important;
	width:fit-content!important;
	margin-top:12px!important;
	padding:13px 18px!important;
	border-radius:999px!important;
	background:#ffffff!important;
	color:#0f172a!important;
	font-weight:950!important;
	text-decoration:none!important;
	box-shadow:0 14px 32px rgba(0,0,0,.18)!important;
}

.aadnp_cta:hover{
	background:#f0f9ff!important;
	color:#0369a1!important;
}

.aadnp_faq{
	margin:30px 0!important;
	padding:30px!important;
	border-radius:30px!important;
	background:#0f172a!important;
	border:1px solid rgba(15,23,42,.16)!important;
	box-shadow:0 20px 52px rgba(15,23,42,.14)!important;
	color-scheme:only light!important;
}

.aadnp_faq h2{
	color:#ffffff!important;
	-webkit-text-fill-color:#ffffff!important;
}

.aadnp_faq_item{
	margin:10px 0!important;
	border-radius:16px!important;
	overflow:hidden!important;
	border:1px solid rgba(255,255,255,.12)!important;
	background:rgba(255,255,255,.06)!important;
}

.aadnp_faq_item summary{
	display:block!important;
	padding:15px 16px!important;
	cursor:pointer!important;
	color:#ffffff!important;
	-webkit-text-fill-color:#ffffff!important;
	background:rgba(255,255,255,.08)!important;
	font-size:16px!important;
	line-height:1.45!important;
	font-weight:950!important;
	list-style:none!important;
}

.aadnp_faq_item summary::-webkit-details-marker{
	display:none!important;
}

.aadnp_faq_item summary::after{
	content:"+"!important;
	float:right!important;
	color:#facc15!important;
	-webkit-text-fill-color:#facc15!important;
	font-weight:950!important;
}

.aadnp_faq_item[open] summary::after{
	content:"−"!important;
}

.aadnp_faq_answer{
	background:#111c31!important;
	color:#e5e7eb!important;
}

.aadnp_faq_answer p{
	margin:0!important;
	padding:13px 16px 15px!important;
	color:#e5e7eb!important;
	-webkit-text-fill-color:#e5e7eb!important;
	background:transparent!important;
	font-size:15.5px!important;
	line-height:1.65!important;
}

@media (max-width:980px){
	.aadnp_summary_grid,
	.aadnp_grid_3,
	.aadnp_steps,
	.aadnp_links_grid{
		grid-template-columns:repeat(2,minmax(0,1fr))!important;
	}
}

@media (max-width:760px){
	.aadnp_page{
		padding:0 12px!important;
	}
	.aadnp_hero,
	.aadnp_section,
	.aadnp_related,
	.aadnp_faq{
		padding:22px 16px!important;
		border-radius:24px!important;
	}
	.aadnp_summary_grid,
	.aadnp_grid_3,
	.aadnp_grid_2,
	.aadnp_steps,
	.aadnp_links_grid{
		grid-template-columns:1fr!important;
	}
	.aadnp_cta{
		width:100%!important;
		white-space:normal!important;
		text-align:center!important;
	}
	.aadnp_table{
		min-width:680px!important;
	}
}

@media (prefers-reduced-motion:reduce){
	.aadnp_page *,
	.aadnp_page *::before,
	.aadnp_page *::after{
		transition:none!important;
		scroll-behavior:auto!important;
	}
}
