
/* Identité et illustrations de l’ébauche fournie par Yekelle.
   Aucune police ni bibliothèque externe. Liens dans config.js. */
:root{color-scheme:dark;--bg:#101112;--surface:#161719;--line:#2c2d2f;--text:#f2eee7;--muted:#b1b0b1;--gold:#dcb772;--gold-bright:#edcd91;--purple:#aa8bfa;--radius:9px;font-family:Arial,Helvetica,sans-serif;font-size:15px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--bg);color:var(--text);line-height:1.55}body.dialog-open{overflow:hidden}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}svg{display:inline-block;vertical-align:middle;flex:none}.icon{width:20px;height:20px;fill:currentColor}.icon.stroke{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3,p{margin:0}h1,h2,h3,.brand-name{font-family:Georgia,'Times New Roman',serif;font-weight:500}h1{font-size:clamp(34px,4vw,49px);line-height:1.13;letter-spacing:-1.5px}h2{font-size:30px;line-height:1.2;letter-spacing:-.6px}h3{font-size:23px;line-height:1.25}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--gold-bright);outline-offset:5px}button:disabled{cursor:default}::selection{background:#a27c3f;color:white}[hidden]{display:none!important}.container{width:calc(100% - 80px);max-width:1200px;margin-inline:auto}.muted{color:var(--muted)}.gold{color:var(--gold)}.small{font-size:13px}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:8px;left:8px;background:var(--gold);color:#141414;padding:12px;transform:translateY(-160%);z-index:99}.skip:focus{transform:none}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2.6px;text-transform:uppercase;color:var(--gold)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:11px 19px;border:1px solid transparent;border-radius:5px;font-size:13px;font-weight:700;line-height:1.25;transition:background .18s,transform .18s,border-color .18s}.btn:hover{transform:translateY(-2px)}.btn-gold{background:linear-gradient(110deg,#e5c486,#cda763);color:#18140d;border-color:#e2bd76;box-shadow:0 3px 14px #0002}.btn-gold:hover{background:var(--gold-bright)}.btn-outline{background:#141517;border-color:#4d493f;color:var(--text)}.btn-outline:hover{border-color:var(--gold);background:#22201b}.btn-quiet{background:transparent;color:var(--muted);padding:8px 0;border:0;font-size:13px}.btn-quiet:hover{color:var(--gold);transform:none}.arrow-link{display:inline-flex;gap:8px;align-items:center;color:var(--gold);font-size:13px}.arrow-link .icon{width:15px;height:15px}.pill{white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center;gap:7px;padding:5px 10px;border:1px solid #42374c;border-radius:30px;font-size:10px;line-height:1.3;font-weight:700;letter-spacing:.9px;color:#d0bcff;background:#241d30}.pill .icon{width:13px;height:13px}.pill-gold{border-color:#51442d;background:#282217;color:var(--gold)}
/* Navigation */
.site-header{position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line);background:#101112f5;backdrop-filter:blur(16px)}.header-inner{min-height:78px;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;gap:13px;white-space:nowrap}.brand-mark{font:47px/.9 Georgia,serif;color:var(--gold);width:34px;letter-spacing:-6px;text-shadow:3px 0 var(--bg),4px 0 var(--gold)}.brand-name{font-size:26px;letter-spacing:-.7px}.brand-name span{color:var(--gold)}.main-nav{display:flex;align-items:center;justify-content:center;gap:27px;margin-inline:auto}.main-nav a{position:relative;display:flex;align-items:center;min-height:78px;color:#d7d5d2;font-size:12px;white-space:nowrap}.main-nav a:hover{color:var(--gold)}.main-nav a[aria-current=page]{color:var(--gold-bright)}.main-nav a[aria-current=page]:after{content:'';position:absolute;bottom:14px;left:0;right:0;height:2px;background:var(--gold)}.discord-header{border-color:#746bd2;color:#b1a8ff;background:transparent;font-weight:500;padding:9px 15px;min-height:39px}.discord-header:hover{background:#8174e71c;border-color:#b1a8ff}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);color:var(--text);height:42px;width:44px;border-radius:5px}
/* L'atlas ne fournit que les illustrations : tous les textes et contrôles sont du HTML. */
.art{background-image:url('illustrations.png');background-repeat:no-repeat;background-color:#252522;position:relative;overflow:hidden}.art:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,#05060738);pointer-events:none}.art-library{background-size:222.84069% 928.08219%;background-position:99.68750% 5.45906%;}
.art-live{background-size:169.73684% 399.70501%;background-position:10.06289% 26.27953%;}
.art-youtube{background-size:342.47788% 736.41304%;background-position:94.28224% 22.97182%;}
.art-short{background-size:744.23077% 761.23596%;background-position:77.11443% 42.90569%;}
.art-tiktok{background-size:744.23077% 761.23596%;background-position:95.42289% 42.90569%;}
.art-jdr{background-size:457.08661% 732.43243%;background-position:5.18192% 71.02564%;}
.art-crew{background-size:460.71429% 732.43243%;background-position:35.31353% 71.02564%;}
.art-tcg{background-size:458.89328% 732.43243%;background-position:65.08811% 71.02564%;}
.art-phasmo{background-size:460.71429% 732.43243%;background-position:94.93949% 71.02564%;}
/* Accueil */
.welcome{position:relative;isolation:isolate;min-height:186px;display:flex;flex-direction:column;justify-content:center;gap:10px;padding-block:34px}.welcome .eyebrow{margin-bottom:4px}.welcome h1{font-size:clamp(33px,3.5vw,46px)}.welcome p{font:19px/1.45 Georgia,serif;color:#bab7b2}.welcome-art{position:absolute;z-index:-1;inset:0 -40px 0 auto;width:58%;opacity:.9;mask-image:linear-gradient(90deg,transparent,#000 40%);-webkit-mask-image:linear-gradient(90deg,transparent,#000 40%)}.welcome-art:after{background:linear-gradient(0deg,var(--bg),transparent 40%),linear-gradient(90deg,var(--bg),transparent 65%)}.broadcast-grid{display:grid;grid-template-columns:minmax(0,1.95fr) minmax(0,1fr);gap:34px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px;min-height:35px}.section-heading h2{font-size:29px}.section-heading .all-link{font-size:11px;color:var(--muted);white-space:nowrap}.section-heading .all-link:hover{color:var(--gold)}.player-shell{position:relative;aspect-ratio:16/9;border:1px solid #62666a;border-radius:7px;overflow:hidden;background:#090a0b;box-shadow:0 8px 28px #0003}.player-shell>.art{position:absolute;inset:0}.player-shade{position:absolute;inset:0;background:linear-gradient(180deg,#0000 40%,#0009 100%);pointer-events:none}.play-button{position:absolute;left:50%;top:55.5%;transform:translate(-50%,-50%);display:grid;place-items:center;width:93px;height:93px;border-radius:50%;border:1px solid #ffffff1f;background:#16191df5;color:white;box-shadow:0 4px 24px #0005;transition:background .18s,box-shadow .18s}.play-button:hover{background:#28241dfc;box-shadow:0 0 0 7px #dcb77226}.play-button .icon{width:33px;height:33px;margin-left:5px}.player-caption{position:absolute;left:20px;bottom:16px;right:20px;display:flex;align-items:center;justify-content:space-between;gap:12px;pointer-events:none;color:#eee;font-size:11px}.player-caption .twitch-word{display:flex;gap:7px;align-items:center;color:#d9c8ff;font-weight:700;font-size:14px}.live-meta{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:18px}.live-meta h3{font-size:25px;margin-bottom:3px}.live-meta p{font-size:14px;color:var(--muted)}.live-meta .btn{white-space:nowrap}.embed-note{color:#929296;font-size:11px;margin-top:13px;display:flex;gap:7px;align-items:center}.embed-note .icon{width:13px;height:13px}.player-shell iframe{width:100%;height:100%;min-height:300px;border:0;display:block;background:#0a0a0a}.player-shell.is-playing{min-height:300px}.video-main{display:block}.video-main .art{aspect-ratio:1.83;border:1px solid #505053;border-radius:7px;transition:border-color .18s}.video-main:hover .art{border-color:var(--gold)}.video-badge{position:absolute;top:10px;left:10px;border-radius:5px;background:#fb1637;padding:3px 6px;z-index:1;line-height:1}.video-badge svg{width:18px;height:18px}.video-main h3{font-size:20px;margin:8px 0 2px}.video-main p{font-size:11px;color:var(--muted)}.shorts-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px}.short-card{position:relative;min-width:0;border:1px solid #35373a;border-radius:7px;overflow:hidden;transition:border-color .2s,transform .2s}.short-card:hover{border-color:#b08e56;transform:translateY(-3px)}.short-card .art{aspect-ratio:.94}.short-body{padding:9px 10px 11px;background:linear-gradient(120deg,#191a1c,#111214)}.platform{display:flex;gap:6px;align-items:center;font-size:10px;color:#c9c8c7;margin-bottom:3px}.platform .icon{width:14px;height:14px}.short-body h3{font-size:17px}.youtube{color:#ff3e50}.tiktok{color:#e6fcfa}.universes{border-top:1px solid var(--line);margin-top:31px;padding-top:27px}.universes .section-heading{margin-bottom:20px}.universes .section-heading h2{font-size:30px}.universe-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.universe-card{display:flex;flex-direction:column;min-width:0;border:1px solid #353637;border-radius:7px;overflow:hidden;background:linear-gradient(135deg,#18191b,#121315);transition:transform .22s,border-color .22s,box-shadow .22s}.universe-card:hover{transform:translateY(-5px);border-color:#9c814f;box-shadow:0 12px 28px #0003}.universe-card .art{aspect-ratio:1.55;transition:filter .2s}.universe-card:hover .art{filter:brightness(1.1)}.universe-body{padding:17px 17px 16px;display:flex;flex-direction:column;flex:1}.universe-body h3{font-size:23px;margin-bottom:6px}.universe-body p{font-size:12px;line-height:1.6;color:var(--muted);margin-bottom:16px;flex:1}.universe-body .arrow-link{align-self:flex-start;padding-bottom:2px;border-bottom:1px solid #9c814f;font-size:12px}.community{position:relative;isolation:isolate;overflow:hidden;display:flex;gap:23px;align-items:center;justify-content:space-between;margin-top:30px;padding:27px 26px;border:1px solid #353637;border-radius:8px;background:#161719}.community>.icon{width:62px;height:62px;color:#a391ff}.community-text{flex:1}.community h2{font-size:27px;margin-bottom:5px}.community p{font-size:12px;color:#cbc8c2}.community p span{color:var(--gold)}.community-art{position:absolute;z-index:-1;inset:0 0 0 40%;opacity:.25;filter:saturate(.4);mask-image:linear-gradient(90deg,transparent,#000)}.community .btn{white-space:nowrap}.site-footer{margin-top:30px;border-top:1px solid var(--line);padding:23px 0 19px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:25px}.site-footer .brand-name{font-size:20px}.site-footer .brand-mark{font-size:36px;width:26px}.socials{display:flex;gap:25px;align-items:center}.socials a{display:flex;align-items:center;gap:7px;color:#bdbac0;font-size:11px;min-height:36px}.socials a:hover{color:var(--gold)}.socials .icon{width:17px;height:17px}.socials .tw{color:#ad8afa}.socials .dc{color:#a391ff}.footer-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:16px;color:#858589;font-size:10px}.footer-bottom button{font-size:10px;color:#aaa4a0}.footer-bottom .icon{height:12px;width:12px}
/* Pages des univers */
.page{padding-top:32px;min-height:65vh;animation:appear .28s ease-out}.page-header{padding:13px 0 32px;max-width:740px}.breadcrumb{font-size:12px;color:#b1a68c;display:flex;gap:10px;margin-bottom:25px}.breadcrumb a:hover{color:var(--gold)}.page-header .eyebrow{margin-bottom:13px}.page-header h1{margin-bottom:16px}.page-header>p{color:var(--muted);font-size:16px;max-width:650px}.feature{display:grid;grid-template-columns:1.04fr 1fr;border:1px solid #353637;border-radius:9px;overflow:hidden;background:var(--surface)}.feature-art{min-height:330px}.feature-copy{padding:38px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:17px}.feature-copy h2{font-size:37px}.feature-copy p{font-size:14px;line-height:1.8;color:#c1beb8}.feature-copy .btn{margin-top:6px}.section-label{display:flex;align-items:center;gap:15px;margin:33px 0 19px}.section-label h2{font-size:27px}.section-label:after{content:'';height:1px;background:var(--line);flex:1}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.info-card{padding:25px;border:1px solid var(--line);background:#151617;border-radius:7px}.info-card .info-no{display:block;color:var(--gold);font-size:12px;letter-spacing:1px;margin-bottom:16px}.info-card h3{font-size:23px;margin-bottom:9px}.info-card p{color:var(--muted);font-size:13px;line-height:1.8}.info-card .arrow-link{margin-top:19px}.page-note{margin-top:23px;padding:17px 20px;border-left:2px solid #786440;background:#1d1b17;color:#c9bfae;font-size:12px;line-height:1.8}.sessions{display:grid;gap:12px}.session{border:1px solid var(--line);border-radius:7px;background:#151617}.session summary{list-style:none;padding:20px;display:flex;gap:18px;align-items:center;cursor:pointer}.session summary::-webkit-details-marker{display:none}.session summary .session-number{color:var(--gold);font-size:11px;letter-spacing:1.5px}.session summary h3{font-size:23px;flex:1}.session summary>.icon{transition:transform .2s;width:16px;height:16px;color:var(--gold)}.session[open] summary>.icon{transform:rotate(45deg)}.session-content{padding:0 21px 24px 112px}.session-content p{font-size:14px;line-height:1.85;color:#c3c0b9;max-width:900px}.session-content .arrow-link{margin-top:17px}.crew-visual{position:relative;min-height:330px;background:#151921;overflow:hidden;display:flex;align-items:flex-end;padding:26px}.crew-visual>.art{position:absolute;inset:0}.crew-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0000 20%,#101112e8)}.crew-caption{position:relative;z-index:1;font-family:Georgia,serif;font-size:28px}.crew-caption span{color:var(--gold)}.callout-row{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin-top:30px;padding-top:25px}.callout-row p{color:var(--muted);font-size:14px}.callout-row .btn{flex-shrink:0}.tcg-demo{padding:32px;border:1px solid #4b3c26;background:radial-gradient(ellipse at 50% 30%,#382d1c55,transparent 75%),#141415;border-radius:9px;text-align:center}.tcg-demo .pill{margin-bottom:13px}.tcg-demo h2{font-size:34px;margin-bottom:8px}.tcg-demo>p{font-size:13px;color:var(--muted)}.booster-cards{display:flex;justify-content:center;gap:25px;padding:32px 0;perspective:1000px}.trading-card{position:relative;width:190px;aspect-ratio:2/3;transform-style:preserve-3d;transition:transform .75s cubic-bezier(.2,.7,.2,1);transition-delay:var(--delay);border-radius:12px}.trading-card.revealed{transform:rotateY(180deg)}.card-side{backface-visibility:hidden;-webkit-backface-visibility:hidden;position:absolute;inset:0;overflow:hidden;border:2px solid #aa864d;border-radius:12px;box-shadow:0 15px 30px #0004}.card-back{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:repeating-linear-gradient(45deg,transparent,transparent 10px,#d8b57108 10px,#d8b57108 11px),radial-gradient(ellipse,#33312a,#15171b);color:var(--gold)}.card-back:before,.card-back:after{content:'';position:absolute;inset:9px;border:1px solid #a6864a80;border-radius:5px}.card-back:after{inset:18px;border-color:#a6864a50}.card-back .sigil{font:65px Georgia,serif;border:1px solid #b7975870;border-radius:50%;width:94px;height:94px;line-height:86px}.card-back span:last-child{font-size:9px;letter-spacing:3px}.card-front{transform:rotateY(180deg);background:#171818;display:flex;flex-direction:column}.card-front .art{height:66%;flex:none}.card-front .card-caption{padding:11px 6px}.card-front h3{font-size:18px;margin-bottom:5px}.card-rarity{font-size:9px;letter-spacing:1.6px;color:var(--gold);text-transform:uppercase}.card-epic .card-side{border-color:#9b7bc1}.card-epic .card-rarity{color:#c2a0ed}.card-common .card-side{border-color:#79958d}.card-common .card-rarity{color:#b7d3c9}.demo-result{min-height:24px;font-size:12px;color:var(--gold);margin-top:13px}.phasma-banner .feature-art{min-height:340px}.faq-list{display:grid;gap:12px}.faq-list details{border:1px solid var(--line);border-radius:6px;background:#161719;padding:0 23px}.faq-list summary{padding:20px 0;cursor:pointer;font-family:Georgia,serif;font-size:23px}.faq-list p{font-size:14px;line-height:1.8;color:#c3c0b9;padding-bottom:22px}.faq-list a{color:var(--gold);text-decoration:underline;text-underline-offset:4px}
/* Modales et mouvements */
dialog{color:var(--text);background:#19191a;border:1px solid #59513e;border-radius:10px;max-width:510px;width:calc(100% - 36px);padding:32px;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#000b;backdrop-filter:blur(5px)}dialog h2{font-size:30px;line-height:1.2;padding-right:23px;margin:15px 0 13px}dialog p{font-size:14px;color:#c6c1b7;line-height:1.8;margin-bottom:15px}dialog .dialog-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:23px}.close-dialog{display:grid;place-items:center;position:absolute;top:14px;right:14px;width:36px;height:36px;color:#c3beb5;border:1px solid #3c3c3c;border-radius:50%;background:#202022}.dialog-list{padding-left:18px;color:#c6c1b7;font-size:13px;line-height:1.8}.dialog-list li+li{margin-top:8px}.dialog-list a{color:var(--gold);text-decoration:underline}.back-top{display:inline-flex;gap:6px;align-items:center}.noscript{padding:15px;background:#342819;color:var(--gold);text-align:center;font-size:13px}@keyframes appear{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(min-width:1450px){.welcome{min-height:203px}.broadcast-grid{gap:38px}.universe-body p{font-size:13px}}
@media(max-width:1120px){.container{width:calc(100% - 48px)}.main-nav{gap:19px}.header-inner{gap:19px}.brand-name{font-size:23px}.discord-header{padding:8px 11px}.broadcast-grid{gap:25px;grid-template-columns:1.8fr 1fr}.live-meta{align-items:flex-start}.live-meta h3{font-size:22px}.live-meta p{font-size:12px}.live-meta .btn{padding:10px 12px;font-size:11px}.universe-grid{gap:13px}.universe-body{padding:15px 13px}.universe-body h3{font-size:21px}.universe-body p{font-size:11px}.welcome-art{right:-24px}.community h2{font-size:25px}.community>.icon{width:49px;height:49px}.feature-copy{padding:28px}}
@media(max-width:900px){.header-inner{min-height:70px;justify-content:space-between;gap:16px}.main-nav{position:absolute;top:70px;left:0;right:0;display:none;flex-direction:column;gap:0;padding:12px 24px 20px;background:#151617;border-bottom:1px solid #464035;box-shadow:0 18px 30px #0007}.main-nav.is-open{display:flex}.main-nav a{min-height:49px;width:100%;font-size:15px}.main-nav a[aria-current=page]:after{bottom:4px;width:30px}.menu-toggle{display:block}.discord-header{margin-left:auto}.welcome h1{font-size:36px}.welcome p{font-size:17px}.welcome-art{width:64%;opacity:.65}.broadcast-grid{grid-template-columns:1fr}.latest{margin-top:6px}.latest-content{display:grid;grid-template-columns:1.2fr 1fr;gap:19px}.shorts-grid{margin-top:0;gap:13px}.short-card .art{aspect-ratio:1}.video-main .art{aspect-ratio:1.93}.short-body h3{font-size:16px}.section-heading h2{font-size:27px}.live-meta{align-items:center}.live-meta h3{font-size:26px}.live-meta p{font-size:14px}.live-meta .btn{font-size:13px;padding:11px 18px}.universe-grid{grid-template-columns:repeat(2,1fr);gap:18px}.universe-card .art{aspect-ratio:1.7}.universe-body{padding:19px}.universe-body h3{font-size:25px}.universe-body p{font-size:13px}.community{flex-wrap:wrap;padding:23px;gap:18px}.community .btn{margin-left:67px}.community-text{min-width:65%}.feature{grid-template-columns:1fr 1fr}.feature-art{min-height:300px}.feature-copy{padding:26px}.feature-copy h2{font-size:31px}.feature-copy p{font-size:13px}.info-card{padding:20px}.info-card h3{font-size:21px}.socials{gap:16px}}
@media(max-width:600px){.container{width:calc(100% - 36px)}.header-inner{min-height:66px;gap:12px}.brand{gap:10px}.brand-mark{font-size:38px;width:28px}.brand-name{font-size:23px}.discord-header{min-height:37px;padding:8px}.discord-header span{display:none}.discord-header .icon{width:19px;height:19px}.menu-toggle{width:38px;height:38px}.main-nav{top:66px}.welcome{min-height:190px;padding-block:32px;gap:11px}.welcome h1{font-size:34px;letter-spacing:-.9px;max-width:290px}.welcome p{font:14px/1.6 Arial,sans-serif;max-width:270px}.welcome .eyebrow{font-size:8px;letter-spacing:1.8px}.welcome-art{right:-18px;width:80%;opacity:.42}.section-heading h2{font-size:26px}.section-heading{margin-bottom:12px}.pill{font-size:9px}.play-button{width:64px;height:64px}.play-button .icon{width:23px;height:23px}.player-caption{left:12px;right:12px;bottom:10px;font-size:8px}.player-caption .twitch-word{font-size:11px}.player-caption .icon{width:15px;height:15px}.live-meta{align-items:flex-start;flex-direction:column;gap:14px;padding-top:17px}.live-meta h3{font-size:25px}.live-meta p{font-size:13px}.live-meta .btn{width:100%}.embed-note{font-size:10px;align-items:flex-start}.broadcast-grid{gap:27px}.latest-content{display:block}.video-main .art{aspect-ratio:1.83}.video-main h3{font-size:23px}.shorts-grid{margin-top:17px;gap:14px}.short-card .art{aspect-ratio:.94}.short-body{padding:11px 12px}.short-body h3{font-size:18px}.platform{font-size:11px}.universes{margin-top:28px;padding-top:25px}.universes .section-heading h2{font-size:28px;max-width:300px}.universe-grid{gap:13px}.universe-card .art{aspect-ratio:1.23}.universe-body{padding:14px 12px}.universe-body h3{font-size:20px}.universe-body p{font-size:11px;margin-bottom:12px}.universe-body .arrow-link{font-size:11px}.community{padding:22px 18px;gap:15px;margin-top:24px}.community>.icon{width:40px;height:40px;align-self:flex-start;margin-top:3px}.community-text{min-width:0}.community h2{font-size:23px}.community p{font-size:12px;line-height:1.75}.community .btn{margin-left:0;width:100%}.community-art{left:0}.site-footer{margin-top:25px;padding-top:22px}.footer-top{align-items:flex-start;gap:18px;flex-direction:column}.socials{justify-content:space-between;width:100%;gap:10px}.socials a{font-size:10px;gap:5px}.footer-bottom{align-items:flex-start;gap:16px;line-height:1.8}.footer-bottom .back-top{white-space:nowrap}.page{padding-top:23px}.breadcrumb{font-size:11px;margin-bottom:21px}.page-header{padding-bottom:25px}.page-header h1{font-size:37px}.page-header>p{font-size:14px}.feature{grid-template-columns:1fr}.feature-art{min-height:0;aspect-ratio:1.65}.feature-copy{padding:26px 23px}.feature-copy h2{font-size:34px}.feature-copy .btn{width:100%}.info-grid{grid-template-columns:1fr}.info-card{padding:23px}.info-card h3{font-size:24px}.info-card .info-no{margin-bottom:9px}.section-label h2{font-size:25px}.session summary{padding:17px;gap:12px}.session summary h3{font-size:20px}.session summary .session-number{font-size:9px;letter-spacing:.7px}.session-content{padding:0 18px 23px}.session-content p{font-size:13px}.crew-visual{min-height:240px}.callout-row{align-items:stretch;flex-direction:column;gap:16px}.tcg-demo{padding:25px 12px}.tcg-demo h2{font-size:28px}.tcg-demo>p{font-size:12px;padding-inline:7px}.booster-cards{gap:8px;padding:28px 0}.trading-card{width:31%;max-width:160px}.card-back .sigil{font-size:39px;width:57px;height:57px;line-height:53px}.card-back span:last-child{font-size:5px;letter-spacing:1.4px}.card-back:before{inset:5px}.card-back:after{inset:9px}.card-front h3{font-size:12px}.card-front .card-caption{padding:6px 3px}.card-rarity{font-size:6px;letter-spacing:.5px}.card-front .art{height:61%}.card-side{border-radius:8px}.demo-result{font-size:11px;line-height:1.6}.phasma-banner .feature-art{min-height:0;aspect-ratio:1.65}.faq-list summary{font-size:20px}.faq-list details{padding-inline:19px}dialog{padding:26px}dialog h2{font-size:27px}dialog .dialog-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Ajustements de la première version du portail. */
.quick-links{display:none}.universe-category{display:block;color:var(--gold);font-size:10px;font-weight:700;letter-spacing:.9px;text-transform:uppercase;margin-bottom:9px;line-height:1.5}.universe-art-link{display:block}.universe-card:focus-within{border-color:var(--gold)}.universe-body h3 a:hover{color:var(--gold-bright)}.universe-body p{font-size:13px}.universe-body .arrow-link{font-size:13px;min-height:36px}.section-heading .all-link{font-size:12px}.embed-note{font-size:12px;line-height:1.6}.video-main p{font-size:12px}.platform{font-size:11px}.footer-bottom{font-size:12px}.footer-bottom button{font-size:12px}
@media(max-width:1120px){.universe-body p{font-size:13px}.universe-body h3{font-size:21px}.universe-category{font-size:10px;letter-spacing:.6px}}
@media(max-width:900px){.quick-links{display:flex;gap:9px;align-items:center;flex-wrap:wrap;padding:0 0 25px}.quick-label{font-size:11px;letter-spacing:1.2px;text-transform:uppercase;color:var(--muted);margin-right:3px}.quick-links a{display:flex;align-items:center;min-height:40px;padding:7px 12px;border:1px solid #4b4437;border-radius:4px;font-size:12px;background:#1c1b18;color:#e5d2ad}.quick-links a:hover{border-color:var(--gold);background:#2b251b}.universe-body h3{font-size:25px}}
@media(max-width:600px){.welcome .eyebrow{font-size:10px;letter-spacing:1.4px}.quick-label{flex-basis:100%;margin-bottom:2px}.quick-links{gap:8px;padding-bottom:26px}.quick-links a{min-height:42px;padding-inline:10px;font-size:12px}.section-heading .all-link{font-size:12px}.embed-note{font-size:12px}.player-caption{font-size:10px}.universe-grid{grid-template-columns:1fr 1fr;gap:13px}.universe-category{font-size:9px;letter-spacing:.4px}.universe-body{padding:15px 12px}.universe-body h3{font-size:21px}.universe-body p{font-size:13px;line-height:1.65}.universe-body .arrow-link{font-size:12px;line-height:1.5}.footer-bottom{font-size:11px}.footer-bottom button{font-size:11px}.socials a{font-size:12px;min-height:44px}}
@media(max-width:370px){.brand-name{font-size:21px}.header-inner{gap:9px}.universe-grid{grid-template-columns:1fr}.universe-card .art{aspect-ratio:1.8}.universe-body h3{font-size:25px}.socials{flex-wrap:wrap;justify-content:flex-start;gap:8px 20px}.quick-links a{font-size:11px}.footer-bottom{flex-wrap:wrap}}

.brand-avatar {
  width: 42px;
  height: 42px;
  object-fit: contain;
  flex-shrink: 0;
}
/* Réseaux flottants */
.socials.floating-socials {
  position: fixed;
  right: 12px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 25;
  display: flex;
  flex-direction: column;
  gap: 6px;
  width: 56px;
  padding: 6px;
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--surface);
  box-shadow: 0 8px 24px #0005;
}

.floating-socials a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 7px;
}

.floating-socials a:hover {
  background: #dcb77218;
}

.floating-socials .icon {
  width: 22px;
  height: 22px;
}

/* Réserver une place aux icônes à côté du contenu */
@media (min-width: 901px) {
  body.has-floating-socials main.container {
    width: calc(100% - 160px);
  }
}

/* Barre fixe sur mobile et tablette */
@media (max-width: 900px) {
  body.has-floating-socials {
    padding-bottom: calc(76px + env(safe-area-inset-bottom, 0px));
  }

  .socials.floating-socials {
    top: auto;
    bottom: 0;
    left: 0;
    right: 0;
    transform: none;
    width: 100%;
    flex-direction: row;
    justify-content: space-around;
    gap: 0;
    padding: 8px 12px;
    padding-bottom: calc(8px + env(safe-area-inset-bottom, 0px));
    border-radius: 12px 12px 0 0;
  }

  .floating-socials a {
    width: 48px;
    height: 48px;
  }
}

/* Lecteur Twitch directement intégré */
.player-shell.twitch-player {
  width: 100%;
  min-width: 0;
  min-height: 300px;
}

@media (max-width: 600px) {
  .player-shell.twitch-player,
  .twitch-player iframe {
    min-height: 0;
  }
}

.twitch-player iframe {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.twitch-link {
  min-height: 36px;
}

.twitch-link:hover,
.twitch-link:focus-visible {
  background: #38284d;
  border-color: #aa8bfa;
}

.twitch-fallback-link {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  text-align: center;
  color: #d0bcff;
  background: #241d30;
  font-weight: 700;
}

.twitch-fallback-link:hover {
  background: #38284d;
}

/* Dernière vidéo principale YouTube et TikTok seul. */
.video-thumbnail {
  position: relative;
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border: 1px solid #505053;
  border-radius: 7px;
  background: var(--surface);
}
.video-thumbnail img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.video-thumbnail:hover,
.video-thumbnail:focus-visible {
  border-color: var(--gold);
}
.video-main h3 a:hover,
.video-main h3 a:focus-visible {
  color: var(--gold-bright);
}
.shorts-grid.tiktok-only {
  grid-template-columns: minmax(0, 1fr);
}
.tiktok-only .short-card {
  display: flex;
  align-items: center;
  min-height: 0;
  background: linear-gradient(120deg, #191a1c, #111214);
}
.tiktok-only .short-card .art {
  flex: none;
  width: 112px;
  height: auto;
  min-height: 0;
  aspect-ratio: 9 / 16;
  align-self: center;
}
.tiktok-only .short-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: 16px;
  background: none;
}
.tiktok-only .short-body h3 {
  font-size: clamp(18px, 1.35vw, 22px);
  overflow-wrap: anywhere;
}

/* Accueil élargi : Twitch dominant, YouTube puis TikTok à droite. */
@media (min-width: 901px) {
  .container {
    width: calc(100% - 160px);
    max-width: 1400px;
  }
}

.broadcast-grid > section {
  min-width: 0;
}

@media (min-width: 1101px) {
  .broadcast-grid {
    grid-template-columns: minmax(0, 2.2fr) minmax(0, 1fr);
    gap: clamp(24px, 2.4vw, 40px);
    align-items: stretch;
  }

  .broadcast-grid .section-heading {
    height: 44px;
    min-height: 44px;
    margin-bottom: 15px;
  }

  .broadcast-grid .section-heading h2 {
    font-size: clamp(23px, 1.7vw, 29px);
  }

  .latest {
    display: flex;
    flex-direction: column;
    min-height: 0;
  }

  .latest > .section-heading {
    flex: none;
    gap: 10px;
  }

  .latest-content {
    flex: 1;
    min-height: 0;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    gap: 16px;
  }

  .latest .video-main h3 {
    font-size: 18px;
    line-height: 1.35;
    margin: 9px 0 0;
  }

  .latest .video-main h3 a {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
  }

  .latest .tiktok-only {
    min-height: 0;
    margin: 0;
    /* Le contenu ne doit pas agrandir la rangée définie par Twitch. */
    contain: size;
  }

  .latest .tiktok-only .short-card {
    height: 100%;
    padding: 0;
  }

  .latest .tiktok-only .short-card .art {
    height: 100%;
    width: auto;
  }

  .latest .tiktok-only .short-card:hover {
    transform: none;
  }
}

/* Tablette et petit ordinateur : les colonnes retrouvent leur hauteur naturelle. */
@media (min-width: 601px) and (max-width: 1100px) {
  .broadcast-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  .latest-content {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr);
    gap: 20px;
    align-items: start;
  }

  .latest .tiktok-only {
    margin: 0;
  }

  .latest .tiktok-only .short-card .art {
    width: clamp(80px, 11vw, 112px);
  }

  .latest .tiktok-only .short-body {
    padding: 12px;
  }
}

@media (max-width: 600px) {
  .latest-content {
    display: block;
  }

  .latest .tiktok-only {
    margin-top: 18px;
  }

  .latest .video-main h3 {
    font-size: 20px;
    overflow-wrap: anywhere;
  }

  .latest .tiktok-only .short-card .art {
    width: clamp(92px, 28vw, 120px);
  }
}
/* Illustration TikTok : conserver ses proportions */
.tiktok-only .short-card .art {
  background-size: auto 761.23596%;
  background-position: 93% 42.90569%;
}


/* Images des encarts de l’accueil */
.universe-grid .art-tcg,
.universe-grid .art-crew,
.universe-grid .art-jdr {
  background-size: cover;
  background-position: center;
}

.universe-grid .art-tcg {
  background-image: url('tcg.png');
}

.universe-grid .art-crew {
  background-image: url('crewmong-us.png');
}

.universe-grid .art-jdr {
  background-image: url('pavillon-noir.png');
}
.universe-grid .art-phasmo {
  background-image: url('phasmophobia.png');
  background-size: cover;
  background-position: center;
}

/* Nouveau setup dans le bandeau de bienvenue */
.welcome-art {
  background-image: url('setup-deadelustv.png');
  background-size: contain;
  background-position: left center;
  background-color: transparent;
  opacity: 1;
  mask-image: none;
  -webkit-mask-image: none;
}

.welcome-art::after {
  background: linear-gradient(
    90deg,
    var(--bg) 0%,
    transparent 45%
  );
}

/* Sur mobile, placer l’image sous le texte de bienvenue */
@media (max-width: 600px) {
  .welcome-art {
    position: relative;
    inset: auto;
    width: 100%;
    aspect-ratio: 3 / 1;
    order: 1;
    z-index: 0;
  }
}

/* Largeur du site sur grand écran ; les marges restent adaptatives. */
@media (min-width: 1101px) {
  .container {
    max-width: 1400px;
  }
}

/* Écran hors live local ; le lecteur est affiché seul lorsque Twitch annonce le direct. */
.twitch-live-mount { position:absolute; inset:0; }
.player-shell.twitch-player[data-mode="live"] { aspect-ratio:16/9; min-height:302px; }
.twitch-offline-panel { position:absolute; inset:0; background:#111218; }
.twitch-offline-image { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.twitch-offline-panel::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,transparent 24%,#07090b96 46%,#07090bd9 100%); pointer-events:none; }
.twitch-offline-copy { position:absolute; z-index:1; left:46%; right:4%; top:27%; bottom:19%; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; gap:13px; }
.twitch-offline-badge { display:inline-flex; align-items:center; gap:8px; color:#ded6c6; font-size:10px; font-weight:700; letter-spacing:1.8px; }
.twitch-offline-badge::before { content:''; width:7px; height:7px; border-radius:50%; background:#8e8a83; }
.twitch-offline-title { font-family:Georgia,'Times New Roman',serif; font-weight:500; font-size:clamp(24px,2.1vw,35px); line-height:1.15; color:#f2eee7; }
.twitch-offline-copy p { color:#d0cdc6; font-size:13px; line-height:1.6; }
.twitch-offline-actions { display:flex; gap:12px; align-items:center; flex-wrap:wrap; }
.twitch-offline-actions .btn { font-size:12px; min-height:40px; padding:10px 14px; }
.twitch-check-button { padding:7px 0; border:0; border-bottom:1px solid #8f794f; color:#e0c38f; background:transparent; font-size:11px; }
.twitch-check-button:hover { color:#fff; }
.twitch-playback-help { margin-top:12px; }
@media (max-width:600px) {
  .player-shell.twitch-player { aspect-ratio:auto; }
  .twitch-offline-panel { position:relative; }
  .twitch-offline-image { position:relative; display:block; height:auto; aspect-ratio:853/480; }
  .twitch-offline-panel::after { display:none; }
  .twitch-offline-copy { position:relative; inset:auto; padding:21px 20px; gap:12px; }
  .twitch-offline-title { font-size:26px; }
}
