
:root{--papier:#FDFDFB;--encre:#1E3A8A;--rouge:#E4572E;--jaune:#F7C548;--seyes:#C9E4F5;--txt:#263247;--gris:#657083;--vert:#4F9C64;--violet:#7865B8;--rose:#D95F86;--orange:#E58A2D;--radius:18px;--shadow:0 10px 28px rgba(30,58,138,.08)}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Nunito',sans-serif;color:var(--txt);background:var(--papier);line-height:1.62}
h1,h2,h3,.logo,.btn,.nav-summary{font-family:'Baloo 2',cursive}
img{max-width:100%;height:auto}
a{color:var(--encre);text-decoration:none}
button,input,select{font:inherit}
.wrap{width:min(1220px,calc(100% - 40px));margin-inline:auto}
.skip{position:fixed;left:12px;top:-80px;background:var(--encre);color:#fff;padding:10px 16px;border-radius:10px;z-index:100}
.skip:focus{top:12px}
:focus-visible{outline:3px solid var(--jaune);outline-offset:3px}
.top{background:#fff;border-bottom:2px solid var(--seyes);position:sticky;top:0;z-index:20}
.top-row{min-height:70px;display:flex;align-items:center;gap:22px}
.logo{font-size:1.85rem;font-weight:800;line-height:1;color:var(--encre);white-space:nowrap}.logo span{color:var(--rouge)}
.desktop-nav{display:flex;align-items:center;justify-content:flex-end;gap:15px;flex:1}.desktop-nav a{font-weight:800;font-size:.84rem;white-space:nowrap}.desktop-nav a:hover{color:var(--rouge)}
.nav-cta{background:var(--rouge);color:#fff!important;padding:9px 15px;border-radius:999px}
.mobile-nav{display:none;margin-left:auto}.nav-summary{cursor:pointer;color:var(--encre);font-weight:800;list-style:none;padding:8px 12px;border:2px solid var(--seyes);border-radius:12px}.nav-summary::-webkit-details-marker{display:none}
.mobile-links{position:absolute;left:20px;right:20px;top:64px;background:#fff;border:2px solid var(--seyes);border-radius:16px;padding:10px;box-shadow:var(--shadow);display:grid;grid-template-columns:1fr 1fr;gap:4px}.mobile-links a{padding:10px;border-radius:10px;font-weight:800}.mobile-links a:hover{background:#EEF6FC}
.hero{position:relative;overflow:hidden;background:#fff url('/assets/pattern-cahier.png') center/cover no-repeat;border-bottom:2px solid var(--seyes);padding:38px 0 32px}.hero::before{content:"";position:absolute;inset:0 auto 0 0;width:54px;background:url('/assets/spirale-cahier.png') left center/54px 100% no-repeat;opacity:.82;pointer-events:none}
.hero-inner{text-align:center;position:relative}.hero h1{font-size:clamp(2.15rem,4.2vw,3.55rem);line-height:1.04;color:var(--encre);max-width:900px;margin:auto}.hero h1 em{font-style:normal;background:var(--jaune);border-radius:10px;padding:0 .2em}.hero-lead{font-size:1.08rem;color:var(--gris);max-width:720px;margin:8px auto 20px}
.hero-mascot{position:absolute;width:190px;left:0;top:22px}.search-form{max-width:760px;margin:0 auto;display:flex;gap:10px;background:#fff;border:2px solid #9FC7E7;padding:8px;border-radius:22px;box-shadow:var(--shadow)}.search-form input{flex:1;min-width:0;border:0;padding:10px 14px;font-size:1rem;color:var(--txt);background:transparent}.search-form input:focus{outline:0}.search-form button{border:0;background:var(--encre);color:#fff;border-radius:15px;padding:10px 24px;font-weight:800;cursor:pointer}.search-form button:hover{background:var(--rouge)}
.idea-row{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:12px;font-size:.84rem}.idea-row a{background:#fff;border:1px solid #AFCDE7;border-radius:999px;padding:5px 11px;font-weight:700}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:850px;margin:26px auto 0}.step{display:grid;grid-template-columns:38px 1fr;gap:10px;text-align:left;align-items:center;background:#fff;border:2px solid var(--seyes);padding:12px 15px;border-radius:16px}.step b{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--encre);color:#fff;font-family:'Baloo 2';font-size:1.2rem}.step strong{display:block;color:var(--encre)}.step small{color:var(--gris)}
section{padding:52px 0}.section-soft{background:#F5FAFE;border-block:2px solid var(--seyes)}.sec-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:22px}.sec{color:var(--encre);font-size:clamp(1.6rem,3vw,2rem);line-height:1.1}.sub{color:var(--gris);margin-top:5px}.text-link{font-weight:800;text-decoration:underline;text-underline-offset:4px}
.level-selector{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px;align-items:start;min-width:0}.level-selector>div,.level-panel{min-width:0;max-width:100%}.level-tabs{display:grid;gap:8px;max-width:100%}.level-tab{border:2px solid var(--seyes);background:#fff;color:var(--encre);border-radius:14px;padding:12px 16px;text-align:left;font-weight:800;cursor:pointer}.level-tab[aria-selected=true]{background:var(--encre);border-color:var(--encre);color:#fff}.level-panel[hidden]{display:none}.level-panel h3{color:var(--encre);font-size:1.35rem;margin-bottom:12px}
.category-shelf{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:10px;padding-bottom:18px;border-bottom:12px solid #C9995B}.category-shelf::after{content:"";position:absolute;left:0;right:0;bottom:-18px;height:6px;background:#E8C792;border-radius:0 0 12px 12px}.category-tab{--cat:#DDEEFF;background:var(--cat);border-radius:16px 16px 5px 5px;padding:12px 10px;text-align:center;min-height:130px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;font-weight:800}.category-tab img{width:70px;height:70px;object-fit:contain;margin-bottom:4px}.cat-blue{--cat:#DDEEFF}.cat-coral{--cat:#FCE2D9}.cat-green{--cat:#E1F1DD}.cat-orange{--cat:#FCE9D4}.cat-purple{--cat:#E9E2F7}.cat-pink{--cat:#F9E0E9}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:18px}.carousel{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(210px,260px);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 3px 14px;scrollbar-width:thin}.carousel .fiche{scroll-snap-align:start}.carousel-controls{display:flex;gap:8px}.circle-btn{width:42px;height:42px;border:2px solid var(--seyes);background:#fff;border-radius:50%;color:var(--encre);font-size:1.2rem;font-weight:900;cursor:pointer}.circle-btn:hover{border-color:var(--encre)}
.fiche{background:#fff;border:2px solid #D8E7F2;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;min-width:0;transition:transform .18s,border-color .18s,box-shadow .18s}.fiche:hover{transform:translateY(-3px);border-color:var(--encre);box-shadow:var(--shadow)}.fiche img{width:100%;aspect-ratio:210/297;object-fit:cover;border-bottom:2px solid #D8E7F2;background:#fff}.fiche-in{padding:12px 14px 15px}.fiche h3{font-size:1rem;line-height:1.28;color:var(--encre)}.chip{display:inline-block;font-size:.72rem;font-weight:800;color:var(--encre);background:#EAF3FA;border-radius:999px;padding:3px 9px;margin-bottom:7px}.niv-chips{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px}.niv-chip{font-size:.67rem;font-weight:800;background:#F4F0DF;padding:2px 7px;border-radius:999px;color:#604D16}
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.stat{background:#fff;border:2px solid var(--seyes);border-radius:16px;padding:20px;text-align:center}.stat strong{font-family:'Baloo 2';font-size:1.8rem;color:var(--encre);display:block}.stat small{color:var(--gris)}
.crumb{font-size:.85rem;color:var(--gris);padding:18px 0 0}.collection-intro{max-width:820px}.collection-intro p{margin-bottom:14px}.faq{max-width:860px;margin-top:28px}.faq details{border-top:1px solid var(--seyes);padding:12px 0}.faq summary{cursor:pointer;font-weight:800;color:var(--encre)}.faq p{padding-top:7px;color:var(--gris)}
.fpage{display:grid;grid-template-columns:minmax(270px,380px) 1fr;gap:42px;align-items:start;padding:30px 0 10px}.prev{border:2px solid var(--seyes);border-radius:18px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}.prev img{width:100%;display:block}.fpage h1{color:var(--encre);font-size:clamp(1.8rem,3vw,2.35rem);line-height:1.12}.desc{margin:14px 0;font-size:1.04rem}.objective-list{margin:14px 0 0 20px}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--encre);color:#fff;font-weight:800;padding:12px 22px;border-radius:999px;margin-top:18px;border:0;cursor:pointer;font-family:'Baloo 2';font-size:1rem}.btn:hover{background:var(--rouge)}.btn.dl{background:var(--rouge)}.btn.dl:hover{background:var(--encre)}.author-line{margin-top:18px;padding:12px 14px;border-left:4px solid var(--jaune);background:#FFF9E8}.author-line a{font-weight:800}
.share-box{margin-top:22px;padding:16px;background:#F5FAFE;border:2px solid var(--seyes);border-radius:16px}.share-title{font-weight:800;color:var(--encre);margin-bottom:9px}.share-actions{display:flex;flex-wrap:wrap;gap:8px}.share-btn{display:inline-flex;align-items:center;min-height:42px;padding:8px 13px;border:2px solid #B7D2E7;background:#fff;border-radius:12px;color:var(--encre);font-weight:800;cursor:pointer}.share-btn:hover{border-color:var(--encre)}.share-feedback{display:block;min-height:1.4em;margin-top:8px;color:var(--vert);font-weight:800}
.article-shell{max-width:820px}.article-cover{width:100%;aspect-ratio:1200/630;object-fit:cover;border-radius:20px;border:2px solid var(--seyes);margin:20px 0}.article h2{color:var(--encre);font-size:1.45rem;margin:30px 0 9px}.article p{margin-bottom:16px}.article a{font-weight:800;text-decoration:underline}.article-inline{margin:28px 0}.article-inline img{width:100%;border-radius:16px}.article-inline figcaption{font-size:.82rem;color:var(--gris);margin-top:6px}.download-zone{margin-top:36px;padding:24px;background:#FFF9E8;border:2px solid #F0D47A;border-radius:20px}.download-zone h2{margin:0 0 15px}.download-zone .grid{grid-template-columns:repeat(3,1fr)}
.profile-hero{display:grid;grid-template-columns:180px 1fr;gap:26px;align-items:center}.profile-hero img{width:180px}.source-list{display:grid;gap:14px;margin-top:22px}.source-item{border:2px solid var(--seyes);border-radius:16px;padding:18px;background:#fff}.source-item h3{color:var(--encre)}
.search-layout{display:grid;grid-template-columns:230px 1fr;gap:26px}.filters{background:#fff;border:2px solid var(--seyes);border-radius:16px;padding:18px;align-self:start}.filters label{display:block;font-weight:800;margin-top:12px}.filters select{width:100%;padding:9px;border:2px solid var(--seyes);border-radius:10px;background:#fff}.result-count{font-weight:800;color:var(--encre);margin-bottom:16px}.empty{padding:30px;border:2px dashed var(--seyes);border-radius:16px;text-align:center;color:var(--gris)}
footer{background:var(--encre);color:#DCE6F5;margin-top:60px;padding:38px 0;font-size:.9rem}footer a{color:#fff;font-weight:700}footer .footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:28px}footer h3{color:#fff;margin-bottom:8px}footer .logo{color:#fff;margin-bottom:10px}footer .logo span{color:var(--jaune)}
@media(max-width:980px){.desktop-nav{display:none}.mobile-nav{display:block}.hero-mascot{position:static;width:130px;margin:0 auto 4px}.category-shelf{grid-template-columns:repeat(3,1fr)}.level-selector{grid-template-columns:1fr}.level-tabs{grid-template-columns:repeat(5,1fr)}.level-tab{text-align:center;padding:10px 6px}.search-layout{grid-template-columns:1fr}.filters{display:grid;grid-template-columns:1fr 1fr;gap:12px}.filters label{margin:0}.footer-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:700px){.wrap{width:min(100% - 24px,1220px)}.top-row{min-height:62px}.logo{font-size:1.65rem}.mobile-links{left:12px;right:12px}.hero{padding:25px 0 24px}.hero::before{width:34px;background-size:34px 100%;opacity:.62}.hero h1{font-size:2.05rem}.hero-lead{font-size:.96rem}.search-form{display:grid;grid-template-columns:1fr}.search-form button{width:100%}.steps{grid-template-columns:1fr;gap:8px}.step{padding:10px 12px}.category-shelf{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}.category-tab{min-width:142px;scroll-snap-align:start}.level-tabs{display:flex;overflow-x:auto}.level-tab{min-width:112px}.sec-head{align-items:flex-start}.carousel-controls{display:none}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fiche-in{padding:10px}.fiche h3{font-size:.9rem}.fpage{grid-template-columns:1fr;gap:24px}.stats{grid-template-columns:1fr}.profile-hero{grid-template-columns:1fr;text-align:center}.profile-hero img{margin:auto}.download-zone .grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr!important}.search-layout{display:block}.filters{margin-bottom:20px}.share-actions{display:grid;grid-template-columns:1fr 1fr}.share-btn{justify-content:center}}
@media(max-width:390px){.grid{grid-template-columns:1fr}.download-zone .grid{grid-template-columns:1fr}.hero h1{font-size:1.85rem}.mobile-links{grid-template-columns:1fr 1fr}.share-actions{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
