/* Sovereign migration: retired decorative layer, below page and component rules. */
@layer ts-legacy {
/* THRONESHARD 0.5 — interface joueur V2 */
:root{
  --tsv2-void:#07090d;--tsv2-ink:#0d1016;--tsv2-panel:rgba(17,19,25,.78);
  --tsv2-panel-strong:rgba(12,14,19,.94);--tsv2-gold:#d8b86e;--tsv2-gold-hi:#f7df9b;
  --tsv2-ivory:#eee6d4;--tsv2-muted:#9e988b;--tsv2-line:rgba(221,190,119,.24);
  --tsv2-blue:#596e91;--tsv2-radius:12px;--tsv2-shadow:0 28px 80px rgba(0,0,0,.52);
  color-scheme:dark;
}
html{background:var(--tsv2-void);scroll-behavior:smooth}
body{background-color:var(--tsv2-void);color:var(--tsv2-ivory);accent-color:var(--tsv2-gold)}
body::after{content:"";position:fixed;z-index:99998;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(224,190,112,.07),transparent 12%,transparent 88%,rgba(224,190,112,.05));mix-blend-mode:screen;opacity:.45}
body.tsv2-entering>*:not(.ts-loading-cinematic):not(.game-navigation){animation:tsv2PageIn .62s cubic-bezier(.18,.78,.2,1) both}
body.tsv2-leaving>*:not(.game-navigation){animation:tsv2PageOut .34s cubic-bezier(.4,0,.7,.25) both;pointer-events:none}
@keyframes tsv2PageIn{from{opacity:0;transform:translate3d(34px,0,0) scale(.992);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}
@keyframes tsv2PageOut{to{opacity:0;transform:translate3d(-28px,0,0) scale(.992);filter:blur(4px)}}

/* Navigation compacte, iconographie fournie et surfaces verre anthracite. */
.game-navigation{height:64px;padding:7px 18px;border-bottom:1px solid var(--tsv2-line);background:linear-gradient(180deg,rgba(9,11,16,.96),rgba(8,10,14,.88));box-shadow:0 16px 42px rgba(0,0,0,.42);backdrop-filter:blur(22px) saturate(1.25)}
.game-navigation::after{content:"";position:absolute;left:7%;right:7%;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--tsv2-gold),transparent);opacity:.48}
.game-navigation-brand{width:46px;height:46px;flex-basis:46px;border-radius:11px;border-color:rgba(218,184,107,.32);background:radial-gradient(circle at 60% 38%,rgba(255,220,143,.13),rgba(7,9,13,.94));box-shadow:inset 0 1px rgba(255,255,255,.08),0 8px 22px rgba(0,0,0,.36)}
.game-navigation-brand img{width:39px;height:39px}
.game-navigation-links{gap:5px}
.game-navigation-link{height:48px;min-width:92px;border-radius:8px;color:#a7a295;letter-spacing:.09em;overflow:hidden}
.game-navigation-link::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 20%,rgba(255,226,157,.12),transparent 66%);transform:translateX(-130%);transition:transform .5s ease}
.game-navigation-link:hover::before{transform:translateX(130%)}
.game-navigation-link:hover,.game-navigation-link.is-active{color:var(--tsv2-ivory);border-color:rgba(221,188,112,.3);background:linear-gradient(180deg,rgba(219,183,102,.12),rgba(66,72,87,.12));transform:translateY(-1px)}
.game-navigation-link.is-active{box-shadow:inset 0 -2px var(--tsv2-gold),0 7px 22px rgba(0,0,0,.22)}
.game-navigation-icon{width:24px;height:24px;display:grid;place-items:center}
.game-navigation-icon img{width:22px;height:22px;object-fit:contain;filter:saturate(.78) brightness(1.08) drop-shadow(0 3px 7px rgba(0,0,0,.55));transition:transform .2s ease,filter .2s ease}
.game-navigation-link:hover .game-navigation-icon img,.game-navigation-link.is-active .game-navigation-icon img{transform:scale(1.1);filter:saturate(1.05) brightness(1.18) drop-shadow(0 0 8px rgba(224,187,103,.3))}
.game-navigation-wallet{height:42px;border-radius:8px;background:rgba(4,6,10,.62);border-color:rgba(220,188,115,.26)}
.has-game-navigation{padding-top:64px}

/* Grand Hall : composition MMO/TCG et panneaux premium. */
body.game-menu-page{background:radial-gradient(circle at 22% 18%,rgba(102,118,151,.15),transparent 31%),radial-gradient(circle at 76% 72%,rgba(176,130,55,.12),transparent 28%),linear-gradient(135deg,#080a0f,#11141b 47%,#090b10)}
.menu-scene::before{background:linear-gradient(90deg,rgba(0,0,0,.62),transparent 30% 70%,rgba(0,0,0,.58)),repeating-linear-gradient(115deg,transparent 0 46px,rgba(255,255,255,.008) 47px 48px)}
.menu-layout{width:min(1500px,calc(100% - 50px));grid-template-columns:minmax(430px,1.18fr) minmax(430px,.82fr);gap:38px;padding:82px 0 28px}
.menu-brand{position:relative;min-height:620px;align-content:center;padding:36px;border:1px solid rgba(223,190,115,.12);border-radius:14px;background:linear-gradient(135deg,rgba(18,21,29,.46),rgba(8,10,14,.18));box-shadow:inset 0 1px rgba(255,255,255,.04),var(--tsv2-shadow);overflow:hidden}
.menu-brand::before{content:"";position:absolute;inset:-20%;background:conic-gradient(from 210deg,transparent,rgba(223,184,97,.07),transparent 35%);animation:tsv2Orbit 16s linear infinite;pointer-events:none}
@keyframes tsv2Orbit{to{transform:rotate(1turn)}}
.menu-brand .menu-logo{position:relative;width:min(660px,92%);filter:drop-shadow(0 24px 52px rgba(0,0,0,.72)) drop-shadow(0 0 22px rgba(222,184,96,.12))}
.menu-brand>span{position:relative;color:var(--tsv2-gold);letter-spacing:.34em}
.menu-brand h2{position:relative;margin:26px 0 8px;font-size:clamp(1.55rem,2.2vw,2.75rem);font-weight:500;color:var(--tsv2-ivory)}
.menu-brand p,.menu-brand .menu-trust{position:relative}
.menu-panel{padding:26px;border-radius:14px;border:1px solid var(--tsv2-line);background:linear-gradient(145deg,rgba(25,28,36,.9),rgba(9,11,16,.94));box-shadow:var(--tsv2-shadow),inset 0 1px rgba(255,255,255,.045);backdrop-filter:blur(24px)}
.menu-panel::before{inset:6px;border-radius:10px;border-color:rgba(242,215,150,.06)}
.menu-player,.hall-core-action,.hall-duel,.hall-options,.menu-onboarding{border-radius:9px;border-color:rgba(219,187,115,.2);background:linear-gradient(120deg,rgba(255,255,255,.035),rgba(255,255,255,.012));box-shadow:inset 0 1px rgba(255,255,255,.025)}
.menu-player{padding:12px 14px}
.menu-player>img,.menu-player-avatar{border-radius:9px}
.hall-duel,.hall-core-action,.hall-options{position:relative;overflow:hidden;transition:transform .22s cubic-bezier(.2,.75,.2,1),border-color .22s ease,box-shadow .22s ease}
.hall-duel:hover,.hall-core-action:hover,.hall-options:hover{transform:translate3d(5px,-2px,0);border-color:rgba(239,205,128,.54);box-shadow:0 15px 36px rgba(0,0,0,.32),inset 3px 0 var(--tsv2-gold)}
.hall-duel{min-height:90px;background:linear-gradient(110deg,rgba(194,151,65,.19),rgba(58,70,94,.18))}
.hall-duel-icon{font-size:0;width:50px;height:50px;background:url("../img/ui/v2/duel.png") center/contain no-repeat}
.hall-core-action>b{font-size:0;width:35px;height:35px;display:block;background:center/contain no-repeat}
.hall-core-action[href*="collection"]>b{background-image:url("../img/ui/v2/collection.png")}
.hall-core-action[href*="boutique"]>b{background-image:url("../img/ui/v2/shop.png")}
.hall-core-action[href*="quests"]>b{background-image:url("../img/ui/v2/quests.png")}
.options-panel,.play-modes-panel,.friends-panel,.resource-pack-panel{border-radius:12px;border:1px solid var(--tsv2-line);background:linear-gradient(145deg,rgba(24,27,35,.98),rgba(8,10,14,.98));box-shadow:0 40px 110px rgba(0,0,0,.72);backdrop-filter:blur(25px)}

/* Pages secondaires : panneaux plus fins, verre et lumière contrôlée. */
.live-page,.deck-builder-page,.launch-deck-page{background:radial-gradient(circle at 50% -5%,rgba(111,124,151,.15),transparent 34%),linear-gradient(135deg,#090b10,#11141a 52%,#080a0e)}
.live-card,.deck-panel,.launch-panel,.collection-panel,.collection-layout>section{border-radius:12px;border-color:var(--tsv2-line);background:linear-gradient(145deg,rgba(24,27,34,.84),rgba(9,11,15,.9));box-shadow:0 20px 54px rgba(0,0,0,.34),inset 0 1px rgba(255,255,255,.035);backdrop-filter:blur(18px)}
button,a,input,select,textarea{outline-color:var(--tsv2-gold)}
button{font-family:inherit}
input,select,textarea{border-radius:7px;border-color:rgba(221,188,113,.23);background:rgba(5,7,10,.72);color:var(--tsv2-ivory)}

/* Duel V2 : contraste anthracite/or, lignes plus fines, profondeur sans gêner le plateau. */
body.duel-interface{background:radial-gradient(ellipse at 50% 48%,rgba(77,85,103,.14),transparent 48%),linear-gradient(180deg,#080a0e,#111117 45%,#07090c)}
.duel-interface .entete-duel{background:linear-gradient(180deg,rgba(8,10,14,.97),rgba(11,13,18,.84));border-bottom-color:rgba(222,188,112,.28);backdrop-filter:blur(16px)}
.duel-interface .table-duel{border-color:rgba(224,190,115,.23);border-radius:12px;background:linear-gradient(180deg,rgba(22,24,31,.78),rgba(9,11,15,.88));box-shadow:0 34px 100px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.035)}
.duel-interface .champ{background:radial-gradient(ellipse at center,rgba(194,151,70,.055),transparent 63%)}
.duel-interface .ligne-combat{border-color:rgba(221,187,110,.12);background:linear-gradient(90deg,transparent,rgba(255,255,255,.015),transparent)}
.duel-interface .portrait-shardbearer,.duel-interface .ressource,.duel-interface .journal,.duel-interface .commandes{border-color:rgba(220,188,116,.22);background:linear-gradient(145deg,rgba(23,26,34,.9),rgba(8,10,14,.91));box-shadow:0 12px 34px rgba(0,0,0,.35)}
.duel-interface .fin-tour{border-radius:8px;background:linear-gradient(135deg,#8f6a2f,#d5af5d);color:#090b0f;box-shadow:0 10px 26px rgba(184,137,54,.2)}
.duel-interface .carte-unite,.duel-interface .carte-main{filter:drop-shadow(0 10px 15px rgba(0,0,0,.38));transition:transform .18s ease,filter .18s ease}
.duel-interface .carte-unite:hover,.duel-interface .carte-main:hover{filter:drop-shadow(0 16px 24px rgba(0,0,0,.52)) brightness(1.04)}

.ts-loading-cinematic{position:fixed;z-index:100000;inset:0;display:grid;place-items:center;background:#020305;opacity:1;transition:opacity .72s cubic-bezier(.22,.68,.24,1);overflow:hidden}
.ts-loading-cinematic.is-fading{opacity:0;pointer-events:none}
.ts-loading-cinematic video{width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none}
.ts-loading-cinematic::after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 130px #000;pointer-events:none}
.ts-loading-cinematic-skip{position:absolute;right:22px;bottom:22px;padding:8px 12px;border:1px solid rgba(229,198,127,.22);border-radius:6px;background:rgba(5,7,10,.46);color:rgba(241,225,188,.65);font:700 .6rem/1 system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;opacity:0;transition:opacity .2s ease}
.ts-loading-cinematic:hover .ts-loading-cinematic-skip{opacity:1}

.version-banner{position:relative;display:block;margin:0 0 16px;min-height:118px;padding:18px 20px;border:1px solid rgba(224,190,111,.28);border-radius:10px;overflow:hidden;color:var(--tsv2-ivory);text-decoration:none;background:linear-gradient(110deg,rgba(46,53,69,.78),rgba(138,100,39,.2)),var(--version-banner-image,none) center/cover;box-shadow:0 18px 44px rgba(0,0,0,.3)}
.version-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,7,11,.94),rgba(6,8,12,.55) 58%,rgba(6,8,12,.08));pointer-events:none}
.version-banner>*{position:relative;z-index:1;display:block;max-width:78%}
.version-banner small{color:var(--tsv2-gold);font:800 .58rem/1 system-ui,sans-serif;letter-spacing:.22em;text-transform:uppercase}
.version-banner strong{margin-top:9px;font-size:1.1rem}.version-banner span{margin-top:6px;color:#bdb5a4;font-size:.72rem;line-height:1.4}

@media(max-width:980px){.game-navigation-link{min-width:55px}.game-navigation-icon img{width:24px;height:24px}.menu-layout{grid-template-columns:1fr;padding-top:76px}.menu-brand{min-height:400px}.menu-brand p,.menu-brand .menu-trust{display:none}}
@media(max-width:620px){.game-navigation{padding-inline:7px}.game-navigation-brand{width:40px;height:40px;flex-basis:40px}.game-navigation-link{min-width:42px;padding-inline:5px}.game-navigation-wallet{min-width:68px}.menu-layout{width:calc(100% - 18px)}.menu-brand{min-height:255px;padding:18px}.menu-panel{padding:18px}.ts-loading-cinematic video{object-fit:contain;background:#020305}}
@media(prefers-reduced-motion:reduce){body.tsv2-entering>*:not(.ts-loading-cinematic),body.tsv2-leaving>*{animation:none}.menu-brand::before{animation:none}.game-navigation-link,.hall-duel,.hall-core-action{transition:none}}

/* 0.5.0 — arène bord à bord, inspection épurée et compétence de classe premium. */
body.duel-interface{overflow:hidden;padding:0}
body.duel-interface .entete-duel{width:calc(100vw - 12px);max-width:none;margin:4px 6px 3px}
body.duel-interface .table-duel{left:4px;right:4px;top:65px;bottom:4px;width:auto;max-width:none;height:auto;min-height:0;margin:0;border-radius:16px}
body.duel-interface .aide{display:none}
body.duel-interface .apercu-carte-dialog{background:transparent;border:0;box-shadow:none;backdrop-filter:none;padding:0}
body.duel-interface .apercu-carte-dialog::before,body.duel-interface .apercu-carte-dialog::after{display:none}
body.duel-interface .apercu-etat-dynamique{padding:18px;border:1px solid rgba(232,197,121,.32);border-radius:15px;background:linear-gradient(150deg,rgba(55,34,21,.97),rgba(18,12,10,.98));box-shadow:0 24px 70px #0009}
body.duel-interface .class-skill-button.is-ready{width:60px;height:60px;right:-70px;border:2px solid #ffe6a3;background:radial-gradient(circle at 36% 28%,#fff1b8,#b5731c 32%,#38200e 64%,#110b08);color:#fff6d7;font-size:1.65rem;filter:none;opacity:1;box-shadow:0 0 0 5px rgba(221,172,74,.16),0 0 25px rgba(255,207,103,.86),0 0 60px rgba(179,105,28,.5);animation:tsClassSkillReady 1.25s ease-in-out infinite;cursor:pointer}
body.duel-interface .class-skill-button.is-ready::before{content:"";position:absolute;inset:-9px;border:1px solid rgba(255,224,147,.65);border-radius:50%;animation:tsClassSkillOrbit 3.2s linear infinite}
body.duel-interface .class-skill-button.is-ready::after{content:"PRÊTE";position:absolute;left:50%;top:calc(100% + 12px);transform:translateX(-50%);padding:4px 7px;border:1px solid rgba(239,203,120,.35);border-radius:999px;background:#180f09eF;color:#ffe5a5;font:900 .5rem/1 Arial;letter-spacing:.12em;white-space:nowrap;box-shadow:0 6px 16px #0009}
body.duel-interface .class-skill-button.is-ready:hover{animation-play-state:paused;transform:translateY(-50%) scale(1.1)}
body.duel-interface .class-skill-button.is-ready+.class-skill-tooltip{right:-236px;width:215px;padding:12px;border-color:rgba(239,201,113,.52);font-size:.76rem;box-shadow:0 18px 45px #000b}
@keyframes tsClassSkillReady{0%,100%{box-shadow:0 0 0 4px rgba(221,172,74,.13),0 0 20px rgba(255,207,103,.62),0 0 45px rgba(179,105,28,.34)}50%{box-shadow:0 0 0 8px rgba(221,172,74,.06),0 0 34px rgba(255,224,142,.95),0 0 72px rgba(179,105,28,.62)}}@keyframes tsClassSkillOrbit{to{transform:rotate(360deg);border-style:dashed}}
.ts-fullscreen-fallback{position:fixed;z-index:13000;right:22px;bottom:22px;width:min(390px,calc(100vw - 32px));display:flex;align-items:flex-start;gap:14px;padding:14px 16px;border:1px solid rgba(236,199,113,.4);border-radius:12px;background:rgba(16,12,10,.96);box-shadow:0 20px 60px #000b;color:#ead6a8}.ts-fullscreen-fallback span{display:grid;gap:4px}.ts-fullscreen-fallback b{font-size:.88rem}.ts-fullscreen-fallback small{color:#a99a7e;font-size:.72rem;line-height:1.4}.ts-fullscreen-fallback button{margin-left:auto;border:0;background:transparent;color:#dfc58f;font-size:1.25rem;cursor:pointer}
@media(max-width:760px){body.duel-interface .entete-duel{margin:0;width:100vw}body.duel-interface .table-duel{left:0;right:0;top:48px;bottom:0;width:auto;height:auto;margin:0;border-radius:0}}

}
