@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap');:root{color-scheme:dark;--ink:#edf0ff;--muted:#c1c7dc;--gold:#f0d7a6;--violet:#b69aff;--edge:#746e9a;--max:2200px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:#080e1f;color:var(--ink);font-family:Inter,Arial,sans-serif;background-image:radial-gradient(ellipse at 50% 0,#202b58 0,transparent 55%);font-size:15px}button,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}.wide{width:min(100%,var(--max));margin:auto}.topbar{height:42px;background:#050916e8;border-bottom:1px solid #8b8cb65c;position:relative;z-index:5}.topbar-inner,.top-actions{display:flex;align-items:center;justify-content:space-between;gap:18px;height:100%}.topbar-inner{padding:0 24px}.portal{font-size:14px}.portal:hover,.nav-link:hover{color:white}.top-actions{justify-content:flex-end;font-size:12px}.version{color:#dac4ff;border:1px solid #8e6acb88;padding:4px 8px;border-radius:20px;font-size:10px;letter-spacing:.06em}.top-actions button{background:transparent;border:0;color:#e5d9ff}.creator{white-space:nowrap}.masthead{height:188px;background:linear-gradient(90deg,#090d22 0%,#101638d8 32%,#10163842 70%,#090c1e22 100%),url('assets/panorama.jpg') right center/auto 100% no-repeat,radial-gradient(ellipse at 70% 10%,#384e94,#0a1029 70%);overflow:hidden;position:relative}.masthead:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#050a1d99,transparent 45%);pointer-events:none}.masthead-inner{position:relative;z-index:1;height:100%;display:flex;align-items:center;padding:8px clamp(22px,5vw,90px)}.identity{display:flex;align-items:center;gap:0;text-shadow:0 0 20px #7464c5}.crescent{font-size:92px;color:#fff2d9;line-height:1;margin-right:-5px}.identity h1{font:500 clamp(45px,5.5vw,82px)/1.1 Georgia,serif;letter-spacing:.025em;margin:0;color:#f5efff}.identity p{font:400 clamp(13px,1.5vw,20px) Georgia,serif;margin:8px 0 0;color:#fff}.ornament{color:#bd9bff;letter-spacing:3px;font-size:11px}.nav{position:sticky;top:0;z-index:10;background:#0b1024f2;border-block:1px solid #9a84c44f;backdrop-filter:blur(14px);box-shadow:0 8px 20px #0007}.nav-inner{display:flex;align-items:stretch;justify-content:space-between;gap:8px;padding:0 22px;min-height:56px}.nav-link{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 15px;font-weight:600;font-size:clamp(12px,1vw,16px);white-space:nowrap;border:1px solid transparent;border-radius:13px;color:#e7e1f3}.nav-link.active{border-color:#c9a9ff;box-shadow:0 0 16px #8967ec77,inset 0 0 18px #6e4ac866;background:#40327099}.welcome{min-height:280px;display:grid;grid-template-columns:44% 56%;position:relative;overflow:hidden;background:linear-gradient(90deg,#061125 0%,#0c1533 55%,#1d2b51);border-bottom:1px solid #4e5b8580}.welcome-text{position:relative;z-index:1;padding:27px 30px 25px clamp(22px,3vw,58px);background:linear-gradient(90deg,#071025 80%,#07102500)}.welcome-art{background:url('assets/hero-landscape.jpg') center 48%/cover no-repeat;min-height:280px;mask-image:linear-gradient(90deg,transparent,#000 16%)}.kicker{font-size:10px;letter-spacing:.2em;color:#c6b5ee;margin:0 0 9px}.welcome h2{font:700 clamp(26px,2.4vw,43px)/1.13 Georgia,serif;margin:0 0 12px;color:#fff}.welcome p:not(.kicker){line-height:1.5;font-size:clamp(13px,1.05vw,16px);max-width:680px;margin:0 0 15px}.cta{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:11px 20px;border:1px solid #a987ff;border-radius:16px;background:linear-gradient(160deg,#413078,#211d48);box-shadow:0 0 14px #9b7cff55;color:#fff;font-weight:700;font-size:14px}.cta:hover{background:#59418e}.cards{display:grid;grid-template-columns:1fr 1.48fr 1fr;gap:22px;padding:18px 20px 10px}.panel{background:linear-gradient(140deg,#17203b,#0e162b 85%);border:1px solid #666b91a3;border-radius:16px;padding:19px 23px;box-shadow:inset 0 1px 0 #ffffff13,0 6px 18px #0003;min-width:0}.panel h3{font:700 clamp(16px,1.25vw,21px) Georgia,serif;color:var(--gold);margin:0 0 15px;padding-bottom:12px;border-bottom:1px solid #9b9fb02c}.overview dl{margin:0}.overview dl div{display:flex;gap:6px;align-items:baseline;margin:0 0 19px;flex-wrap:wrap}.overview dt{font-weight:700}.overview dd{margin:0;color:#e1e6f6}.note{font-size:12px;color:#aeb8d0;border-top:1px solid #67739455;padding-top:13px;line-height:1.5}.panel-title{display:flex;align-items:flex-start;justify-content:space-between}.panel-title h3{flex:1}.ribbon{background:#6c4cc1;color:#fff;padding:7px 15px;font-weight:700;font-size:12px;clip-path:polygon(0 0,100% 0,100% 100%,0 100%,12% 50%);margin:-6px -23px 0 10px}.latest-body{display:grid;grid-template-columns:38% 1fr;gap:19px}.latest-body img{width:100%;height:195px;object-fit:cover;border-radius:12px;border:1px solid #5c78a6}.latest-body time{font-size:11px;color:#d6d9e5}.latest-body h4{font:700 clamp(18px,1.4vw,24px)/1.13 Georgia,serif;margin:10px 0;color:#f3e3c9}.latest-body p{font-size:13px;line-height:1.48;margin:0 0 10px}.text-button{border:0;background:transparent;color:#cdbaff;padding:0;font-weight:700}.text-button:hover{text-decoration:underline}.entry-detail{border-top:1px solid #6d6e9155;margin-top:14px;padding-top:12px;font-size:13px;line-height:1.6;color:#d6dded}.roadmap-list{list-style:none;margin:0;padding:0}.roadmap-list li{display:grid;grid-template-columns:25px minmax(0,1fr) auto;gap:9px;align-items:center;min-height:37px;font-size:13px}.roadmap-list li b{background:#34374e;padding:5px 8px;border-radius:9px;font-size:11px;font-weight:600;white-space:nowrap}.roadmap-list .completed b{background:#145b36}.roadmap-list .progress b{background:#263f7e}.status-icon{font-size:23px;color:#9199b4}.completed .status-icon{color:#66df91}.progress .status-icon{color:#e9c5ff;text-shadow:0 0 8px #cdaaff}.creation-panel{margin:12px 20px 0;padding:16px 24px}.creation-heading h3{border:0;margin:0;padding:0}.creation-heading p{font-size:12px;color:#c1c4dc;margin:5px 0 0}.creation-main{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin-top:16px}.timeline{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:relative}.timeline:before{content:'';height:3px;background:#a6a1b7;position:absolute;top:11px;left:10%;right:10%}.milestone{border:0;background:transparent;color:#e3e4f2;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px;min-width:0;padding:0 4px}.milestone .point{display:block;height:23px;width:23px;border:3px solid #9a9aaf;background:#11172b;border-radius:50%;position:relative;z-index:1;margin-bottom:5px}.milestone.selected .point{background:#7950db;border-color:#fff;box-shadow:0 0 12px 4px #8e6cff}.milestone strong{font-weight:500;font-size:12px}.milestone small{font-size:11px;color:#bec4dc}.milestone:hover .point{border-color:#d8c5ff}.cta-small{white-space:nowrap;font-size:12px;padding:11px 16px}.milestone-detail{display:flex;gap:9px;align-items:baseline;margin-top:15px;border-top:1px solid #6a72965e;padding-top:10px;font-size:12px;color:#bec9e2}.milestone-detail strong{color:#ead9ff}.creation-links{display:flex;gap:20px;justify-content:flex-end;margin-top:8px;font-size:12px;color:#c5b0ff}.creation-links a:hover{text-decoration:underline}.lower,.bottom-panels{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:18px 20px 0}.lower .panel,.bottom-panels .panel{min-height:170px}.lower p,.bottom-panels p{font-size:13px;line-height:1.6;color:#c9cde0}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.gallery-grid figure{margin:0}.gallery-grid img{width:100%;height:145px;object-fit:cover;border-radius:10px}.gallery-grid figcaption{font-size:12px;color:#d5c9f3;margin-top:6px}.archive-row{display:flex;align-items:center;gap:12px;border-top:1px solid #5c678a66;padding:12px 0;font-size:12px}.archive-row strong{flex:1}.tag{display:inline-block;border:1px solid #8e79b5;border-radius:8px;padding:5px 8px;font-size:11px;color:#ddcaff}footer{border-top:1px solid #565b87;background:#070c1b;margin-top:28px}.footer-inner{display:flex;justify-content:space-between;gap:15px;padding:22px;font-size:12px;color:#adb8d3}.footer-inner a{color:#d3baff}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(80px);background:#34275c;border:1px solid #a48cff;border-radius:12px;padding:12px 18px;opacity:0;transition:.2s;z-index:100}.toast.show{transform:translateX(-50%);opacity:1}@media(min-width:1650px){.masthead{height:225px}.welcome{min-height:350px}.welcome-art{min-height:350px}.latest-body img{height:245px}.cards{gap:26px;padding:24px 26px 12px}.panel{padding:24px 28px}.creation-panel{margin-inline:26px}.lower,.bottom-panels{margin-inline:26px}}@media(max-width:1000px){.cards{grid-template-columns:1fr 1fr}.latest{grid-column:span 2;grid-row:1}.nav-inner{overflow-x:auto;justify-content:flex-start}.nav-link{flex:none}.creation-main{grid-template-columns:1fr}.cta-small{justify-self:end}.welcome{grid-template-columns:52% 48%}}@media(max-width:650px){.topbar-inner{padding:0 12px}.portal span{font-size:11px}.creator{display:none}.top-actions{gap:8px}.masthead{height:135px}.masthead-inner{padding:8px 17px}.crescent{font-size:58px}.identity h1{font-size:39px}.identity p{font-size:12px}.ornament{font-size:8px;letter-spacing:1px}.nav-inner{min-height:47px;padding:0 8px}.nav-link{font-size:12px;padding:9px}.welcome{display:block}.welcome-text{padding:25px 18px;background:linear-gradient(90deg,#061024ef,#061024bd)}.welcome-art{height:160px;min-height:160px;mask-image:none;background-position:center 40%}.welcome h2{font-size:29px}.cards,.lower,.bottom-panels{display:block;padding:12px;margin:0}.cards .panel,.lower .panel,.bottom-panels .panel{margin-bottom:12px}.latest-body{grid-template-columns:120px 1fr;gap:12px}.latest-body img{height:170px}.latest-body h4{font-size:18px}.latest-body p{font-size:12px}.creation-panel{margin:0 12px;padding:15px}.timeline{overflow-x:auto;min-width:0;gap:4px}.milestone strong{font-size:10px}.milestone small{font-size:9px}.milestone-detail{display:block}.milestone-detail span{display:block;margin-top:5px}.creation-links{justify-content:flex-start;flex-wrap:wrap;gap:12px}.footer-inner{flex-wrap:wrap}}@media(max-width:390px){.version{display:none}.latest-body{grid-template-columns:1fr}.latest-body img{height:135px}.timeline{overflow-x:auto}.milestone{min-width:65px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Bêta 0.2.1 — correction d'alignement sur les grands écrans */
html,body{width:100%;min-width:0;overflow-x:clip}
body{display:block}
.wide{width:100%;max-width:2200px;margin-inline:auto;min-width:0}
main.wide{display:block;max-width:2200px;margin-inline:auto}
.topbar-inner,.masthead-inner,.nav-inner,.footer-inner{width:100%;max-width:2200px;margin-inline:auto}
.masthead{background-image:linear-gradient(90deg,#090d22c7 0%,#1016386b 38%,#090c1e11 100%),url('assets/panorama.jpg');background-position:center,center 48%;background-size:cover,cover;background-repeat:no-repeat}
.cards,.lower,.bottom-panels{width:auto;min-width:0}
.cards>.panel{min-width:0}
.welcome{width:100%}
[hidden]{display:none!important}
@media(min-width:1650px){.masthead{height:200px}}

/* Bêta 0.2.2 — tous les visuels restent dans la zone de 2200 px */
.masthead{width:100%;max-width:var(--max);margin-inline:auto;overflow:hidden;background-size:cover,cover;background-position:center center,center center}
.masthead-inner{max-width:100%;width:100%}
.welcome{max-width:100%;overflow:hidden}
.welcome-art{min-width:0;max-width:100%;background-size:cover}
.gallery-grid img,.latest-body img{max-width:100%;display:block}
@media(min-width:2201px){.masthead{background-size:cover,cover}}

/* Bêta 0.2.3 — logo compact, grande pleine lune entièrement visible, cadre 2200px */
.masthead{height:205px;max-width:2200px;margin-inline:auto;overflow:hidden;isolation:isolate;
 background-color:#080e27;
 background-image:linear-gradient(90deg,#080d24 0%,#0a1030 22%,#0a1030e8 39%,#0a10307a 57%,#0a103000 78%),url('assets/panorama-lune.jpg');
 background-size:100% 100%,auto 360px;
 background-position:center,right 30%;background-repeat:no-repeat;
 border-inline:1px solid #5d66904a}
.masthead:after{background:linear-gradient(0deg,#060b1c99,transparent 27%)}
.masthead-inner{padding:10px clamp(22px,3.2vw,66px)}
.identity{gap:9px;max-width:55%;filter:drop-shadow(0 2px 8px #02051e);align-items:center}
.identity .crescent{font-family:Georgia,serif;font-size:clamp(49px,4vw,69px);line-height:.8;margin-right:-5px;color:#fff3d5;text-shadow:0 0 12px #e4c8ff88,0 0 25px #8566d6}
.identity h1{font:500 clamp(35px,3.8vw,62px)/1.02 Georgia,serif;white-space:nowrap;letter-spacing:.025em;text-shadow:0 0 14px #a78cff99,0 2px 3px #070b1d}
.identity .ornament{max-width:100%;overflow:hidden;white-space:nowrap;font-size:9px;letter-spacing:1.4px;color:#d9c1ff;line-height:1.4}
.identity p{font:400 clamp(12px,1vw,16px)/1.3 Georgia,serif;margin:6px 0 0;color:#f3ecff}
@media(min-width:1650px){.masthead{height:205px}}
@media(max-width:900px){.masthead{height:168px;background-size:100% 100%,auto 300px;background-position:center,72% 29%}.identity{max-width:70%}.identity h1{font-size:clamp(34px,5vw,52px)}}
@media(max-width:650px){.masthead{height:137px;background-size:100% 100%,auto 235px;background-position:center,66% 25%}.masthead-inner{padding-inline:14px}.identity{max-width:85%;gap:3px}.identity .crescent{font-size:45px}.identity h1{font-size:clamp(27px,7vw,39px)}.identity p{font-size:10px}.identity .ornament{font-size:7px;letter-spacing:0}}

/* Bêta 0.2.4 — illustration officielle complète, sans texte HTML superposé. */
.masthead{display:block;max-width:2200px;width:100%;height:auto!important;min-height:0!important;margin-inline:auto;background:none!important;overflow:hidden;line-height:0}
.masthead::after{display:none!important}
.masthead-image{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}
@media(max-width:650px){.masthead{height:140px!important}.masthead-image{height:140px;width:100%;object-fit:cover;object-position:left center}}

/* 0.2.5 — galerie téléchargeable */
.gallery-panel{min-width:0}
.wallpaper-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}
.wallpaper-card{min-width:0;margin:0;background:#080e23;border:1px solid #6f689b77;border-radius:12px;overflow:hidden}
.wallpaper-card>a{display:block;overflow:hidden}
.wallpaper-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;transition:transform .25s ease}
.wallpaper-card>a:hover img{transform:scale(1.025)}
.wallpaper-card figcaption{display:flex;flex-direction:column;gap:6px;padding:13px}
.wallpaper-card figcaption strong{font-size:16px;color:#f5e6c6}
.wallpaper-card figcaption span,.wallpaper-card small,.gallery-notice{color:#b7c0d8;font-size:12px;line-height:1.5}
.wallpaper-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
.wallpaper-actions a{border:1px solid #987ce6;background:#302353;color:#f8efff;border-radius:7px;text-decoration:none;font-size:12px;font-weight:650;padding:8px 10px}
.wallpaper-actions a:hover,.wallpaper-actions a:focus-visible{background:#6542a4}
@media(max-width:780px){.wallpaper-grid{grid-template-columns:1fr}}

/* Bêta 0.2.6 : carrousel pleine largeur, archives sous jeu et communauté */
.gallery-carousel-section{width:100%;max-width:100%;min-width:0;margin-top:20px;overflow:hidden}
.gallery-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}
.gallery-header h3{margin-bottom:8px}
.gallery-header p{color:#c7c8dd;line-height:1.55;margin:0}
.gallery-navigation{display:flex;align-items:center;gap:10px;flex-shrink:0}
.gallery-counter{color:#e7dbff;font-weight:700;font-size:13px;min-width:45px;text-align:center}
.gallery-arrow{cursor:pointer;border:1px solid #9c7af0;background:#261d47;color:#fff;border-radius:50%;width:42px;height:42px;font-size:29px;line-height:1}
.gallery-arrow:hover,.gallery-arrow:focus-visible{background:#6946a8}
.gallery-viewport{width:100%;overflow:hidden;border-radius:12px;outline-offset:4px;touch-action:pan-y}
.gallery-track{display:flex;transition:transform .42s ease;will-change:transform}
.gallery-slide{flex:0 0 100%;width:100%;min-width:0;margin:0;background:#090f25;border:1px solid #65598f;border-radius:12px;overflow:hidden}
.gallery-image-link{display:block;width:100%;height:clamp(240px,34vw,610px);background:#090f25;overflow:hidden}
.gallery-image-link img{display:block;width:100%;height:100%;object-fit:contain}
.gallery-caption{padding:16px 22px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}
.gallery-caption strong{font-size:clamp(17px,1.4vw,24px);color:#f3e4c6}
.gallery-caption p{color:#bfc6dd;margin:6px 0 0;font-size:13px}
.gallery-dots{display:flex;justify-content:center;gap:12px;margin:15px 0}
.gallery-dot{border:1px solid #a18bcc;background:#292744;width:11px;height:11px;border-radius:50%;cursor:pointer;padding:0}
.gallery-dot.active{background:#cbb4ff;box-shadow:0 0 12px #ac82ff}
.archives-row{margin-top:20px;width:100%}
.archives-row>.panel{width:100%}
@media(max-width:750px){.gallery-header{align-items:flex-start;flex-direction:column;gap:12px}.gallery-image-link{height:240px}.gallery-caption{padding:12px}.gallery-navigation{align-self:flex-end}.gallery-arrow{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){.gallery-track{transition:none}}

/* Bêta 0.2.7 : jusqu'à cinq vignettes visibles sur ordinateur */
.gallery-track{gap:12px;will-change:transform}
.gallery-slide{flex:0 0 calc((100% - 48px)/5);width:calc((100% - 48px)/5)}
.gallery-image-link{height:auto;aspect-ratio:16/10}
.gallery-image-link img{object-fit:cover}
.gallery-caption{display:block;padding:11px}
.gallery-caption strong{font-size:14px;line-height:1.3}
.gallery-caption p{font-size:11px;line-height:1.4;min-height:44px}
.gallery-caption .wallpaper-actions{display:flex;gap:5px;flex-wrap:wrap;margin-top:10px}
.gallery-caption .wallpaper-actions a{font-size:10px;padding:7px 8px}
@media(max-width:1500px){
 .gallery-slide{flex-basis:calc((100% - 24px)/3);width:calc((100% - 24px)/3)}
}
@media(max-width:750px){
 .gallery-slide{flex-basis:100%;width:100%}
 .gallery-image-link{height:auto;aspect-ratio:16/10}
 .gallery-caption p{min-height:0}
}

/* 0.2.9 — alignement uniforme de tous les cadres */
main.wide{--frame-gutter:20px}
main.wide .cards{padding-left:var(--frame-gutter);padding-right:var(--frame-gutter)}
main.wide .creation-panel{margin-left:var(--frame-gutter);margin-right:var(--frame-gutter)}
main.wide .gallery-carousel-section,main.wide .archives-row{width:auto;max-width:none;margin-left:var(--frame-gutter);margin-right:var(--frame-gutter);box-sizing:border-box}
main.wide .lower,main.wide .bottom-panels{margin-left:var(--frame-gutter);margin-right:var(--frame-gutter)}
@media(min-width:1650px){main.wide{--frame-gutter:26px}}
@media(max-width:650px){main.wide{--frame-gutter:12px}main.wide .cards{padding-left:var(--frame-gutter);padding-right:var(--frame-gutter)}main.wide .creation-panel,main.wide .gallery-carousel-section,main.wide .archives-row,main.wide .lower,main.wide .bottom-panels{margin-left:var(--frame-gutter);margin-right:var(--frame-gutter)}}
