/* Images carry identity; all wording and controls stay in HTML. */
.ev-art{display:block;position:relative;flex:none;width:220px;height:220px;aspect-ratio:1;pointer-events:none;user-select:none;overflow:hidden;border-radius:20px}
.ev-art>img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;mask-image:radial-gradient(ellipse at center,#000 62%,#000d 79%,transparent 100%)}
.ev-art.class-resource-art{width:220px;height:220px;mask-image:radial-gradient(ellipse at center,#000 55%,#000d 75%,transparent 100%);border-radius:20px}
.ev-image-unavailable{background:linear-gradient(135deg,transparent,color-mix(in srgb,var(--gold) 15%,transparent));opacity:.4}
.ev-banner{display:grid!important;grid-template-columns:minmax(0,1fr) 240px;align-items:center;column-gap:32px;row-gap:12px;padding:28px 32px!important;border:1px solid var(--line);border-radius:28px;background:radial-gradient(ellipse at 90% 30%,color-mix(in srgb,var(--level-color,var(--gold)) 12%,transparent),transparent 65%),var(--surface);margin-bottom:28px;isolation:isolate}
.ev-banner>:not(.ev-art){grid-column:1;min-width:0}
.ev-banner>.ev-art{grid-column:2;grid-row:1 / span 4;justify-self:center;align-self:center;width:240px;height:240px}
.ev-banner h1,.ev-banner h2{max-width:100%;text-wrap:balance}
.ev-banner>.reading-search-box,.ev-banner>.museum-doors,.ev-banner>.museum-learning-paths{grid-column:1/-1;grid-row:auto}
.ev-banner>.reading-search-box{justify-self:end;width:min(100%,420px);flex:none}
.ev-banner>.atelier-root-button{justify-self:start;width:auto}
.ev-level-card{display:grid;grid-template-columns:minmax(0,1fr) 140px;column-gap:16px;align-items:start}
.ev-level-card>:not(.ev-art){grid-column:1}.ev-level-card>.ev-art{grid-column:2;grid-row:1 / span 4;align-self:center;width:140px;height:140px}
.ev-level-card .level-number{justify-self:start}.ev-level-card .level-action{grid-column:1/-1}
:root .class-resource-art.ev-resource{background-image:none!important;mask-image:none;overflow:visible}
:root .class-resource-art.ev-resource>.ev-art{width:100%;height:100%;border-radius:12px}
.ev-art[data-art=brevet]{background-image:url('/assets/brevet-v157.webp');background-size:300% 200%;background-position:0 0}
:root #repere-chapters .chapter-drawing.ev-art{width:76px;height:76px;flex:none}
.ev-compact{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:4px 18px;padding:18px 22px;border:1px solid var(--line);border-radius:20px;background:var(--surface)}
.ev-compact>:not(.ev-art){grid-column:1}.ev-compact>.ev-art{width:96px;height:96px;grid-column:2;grid-row:1 / span 4;align-self:center}
.ev-flashcard-mark{width:80px;height:80px;margin:0 auto 8px}
.ev-door{display:grid;grid-template-columns:minmax(0,1fr) 88px;align-content:center;gap:10px 14px}
.ev-door>strong,.ev-door>span:not(.ev-art){grid-column:1}.ev-door>.ev-art{width:88px;height:88px;grid-column:2;grid-row:1 / span 2;align-self:center}
.ev-section-title{display:flex;align-items:center;gap:14px}.ev-section-title>.ev-art{width:76px;height:76px;order:-1}
.ev-nav-icon{width:18px;height:18px;min-width:18px;display:inline-block;vertical-align:-3px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;margin-right:7px;pointer-events:none}
.ev-nav-tab{align-items:center}
[data-theme=dark] .ev-banner{background:radial-gradient(ellipse at 90% 30%,color-mix(in srgb,var(--level-color,var(--gold)) 10%,transparent),transparent 65%),var(--surface)}
[data-theme=dark] .ev-art>img{filter:brightness(.94);mask-image:radial-gradient(ellipse at center,#000 55%,#000d 72%,transparent 99%)}
/* Seasonal composition keeps priority; chapter images remain useful, heroes use the season. */
html[data-season] .ev-banner>.ev-art{display:none}
html[data-season] .ev-banner{grid-template-columns:minmax(0,1fr);background:var(--season-surface,var(--surface))}
html[data-season] .ev-banner>:not(.ev-art){grid-column:1}
@media(max-width:1000px){.ev-banner{grid-template-columns:minmax(0,1fr) 180px;gap:14px 22px;padding:24px!important}.ev-banner>.ev-art{width:180px;height:180px}.ev-level-card{grid-template-columns:minmax(0,1fr) 104px}.ev-level-card>.ev-art{width:104px;height:104px}}
@media(max-width:620px){.ev-banner{grid-template-columns:minmax(0,1fr) 96px;gap:10px 12px;padding:20px 16px!important;border-radius:20px}.ev-banner>.ev-art{width:96px;height:96px;align-self:start;margin-top:12px;grid-row:1 / span 4}.ev-banner h1,.ev-banner h2{font-size:clamp(1.4rem,5.6vw,1.9rem)}.ev-banner .introduction,.ev-banner .ce-lead{font-size:.94rem}.ev-banner>.reading-search-box{width:100%}.ev-level-card{grid-template-columns:minmax(0,1fr) 110px}.ev-level-card>.ev-art{width:110px;height:110px}:root #repere-chapters .chapter-drawing.ev-art{width:56px;height:56px}.ev-door{grid-template-columns:minmax(0,1fr) 68px}.ev-door>.ev-art{width:68px;height:68px}.ev-compact{grid-template-columns:minmax(0,1fr) 64px;padding:14px;gap:8px}.ev-compact>.ev-art{width:64px;height:64px}.ev-nav-icon{width:15px;height:15px;min-width:15px;margin-right:4px}.ev-flashcard-mark{width:60px;height:60px}.ev-section-title>.ev-art{width:54px;height:54px}}
@media print{.ev-art,.ev-nav-icon{display:none!important}.ev-banner,.ev-compact,.ev-level-card{display:block!important;border:0;padding:0!important;background:none}}

/* Les trois accès gardent leur place sur les petits écrans. */
@media(max-width:620px){#tab-oeuvres.reading-nav-highlight,#tab-grammaire.explorer-nav-highlight,#tab-atelier.atelier-nav-highlight{display:flex;flex-direction:column;justify-content:center;gap:4px;white-space:normal;padding:8px 5px;min-width:0}#tab-oeuvres .ev-nav-icon,#tab-grammaire .ev-nav-icon,#tab-atelier .ev-nav-icon{margin:0}}
