:root{
  --bg:#090a08;--bg2:#0f110e;--panel:#121510;--panel2:#181b16;--line:#292d24;
  --text:#ebe8de;--muted:#8f9388;--gold:#c8ad6a;--gold2:#ead99d;--ember:#b86142;
  --moss:#718268;--blue:#8398a8;--violet:#9a86b4;--pink:#b9778f;--orange:#c77b42;
  --sidebar:252px;--radius:18px;--shadow:0 28px 70px rgba(0,0,0,.45);
}
*{box-sizing:border-box}html{background:var(--bg);color-scheme:dark}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:var(--bg);min-height:100vh}button,input,select{font:inherit}a{color:inherit;text-decoration:none}img{max-width:100%}code{font-family:"Cascadia Code",Consolas,monospace}
body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;z-index:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px);background-size:52px 52px;mask-image:linear-gradient(to bottom,black,transparent 72%)}
.ambient{position:fixed;border-radius:50%;filter:blur(90px);pointer-events:none;z-index:0}.ambient-a{width:380px;height:380px;background:rgba(185,146,69,.10);top:-160px;right:10%}.ambient-b{width:320px;height:320px;background:rgba(84,105,75,.08);bottom:-130px;left:28%}
.app-shell{display:flex}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar);padding:24px 18px 18px;background:rgba(14,16,13,.96);border-right:1px solid #252820;z-index:20;display:flex;flex-direction:column;backdrop-filter:blur(14px)}
.brand{display:flex;align-items:center;gap:11px;padding:4px 7px 24px}.brand-sigil{width:36px;height:44px;color:var(--gold);filter:drop-shadow(0 0 12px rgba(200,173,106,.2))}.brand span{display:flex;flex-direction:column;line-height:1.05}.brand strong{font-family:Georgia,serif;font-size:22px;letter-spacing:.4px;font-weight:600}.brand small{color:#736e60;font-size:10px;letter-spacing:1.7px;text-transform:uppercase;margin-top:5px}
.nav-list{display:flex;flex-direction:column;gap:5px}.nav-item{height:48px;display:flex;align-items:center;gap:13px;padding:0 13px;border:1px solid transparent;border-radius:12px;color:#aaa99f;font-size:14px;font-weight:650;transition:.2s}.nav-item:hover:not(.disabled){background:#171a15;color:#e8e5dc;border-color:#242820}.nav-item.active{background:linear-gradient(90deg,rgba(200,173,106,.16),rgba(200,173,106,.05));color:var(--gold2);border-color:rgba(200,173,106,.22)}.nav-icon{width:21px;height:21px;display:grid;place-items:center}.nav-icon svg{width:21px;height:21px}.nav-item.disabled{opacity:.36;cursor:not-allowed;margin-top:3px}.nav-item:nth-last-child(3){margin-top:16px}.soon{margin-left:auto;font-size:9px;text-transform:uppercase;letter-spacing:.8px;color:#6b6b62}.sidebar-user{margin-top:auto;border-top:1px solid #262920;padding:17px 5px 1px;display:flex;align-items:center;gap:10px}.avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;border:1px solid #3a3e31}.sidebar-user-meta{min-width:0;display:flex;flex-direction:column;flex:1}.sidebar-user-meta strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-meta small{font-size:10px;color:#777b71;margin-top:2px}.icon-btn{width:34px;height:34px;display:grid;place-items:center;color:#777b71;border-radius:9px}.icon-btn:hover{background:#1b1e18;color:#d6cfba}.icon-btn svg{width:18px}
.main-content{margin-left:var(--sidebar);width:calc(100% - var(--sidebar));padding:34px 38px 70px;position:relative;z-index:1;max-width:1900px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:28px}.eyebrow{margin:0 0 7px;color:#8f825f;font-size:10px;font-weight:800;letter-spacing:2.3px}.page-header h1,.login-panel h1{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.6px;margin:0;font-size:38px}.page-subtitle{margin:8px 0 0;color:var(--muted);font-size:14px}.version-chip{border:1px solid #35372e;color:#7f806f;background:#131510;border-radius:999px;padding:7px 11px;font-size:10px;letter-spacing:1px}
.btn{appearance:none;border:0;display:inline-flex;align-items:center;justify-content:center;gap:9px;height:45px;padding:0 18px;border-radius:11px;font-weight:800;font-size:13px;cursor:pointer;transition:transform .18s,box-shadow .18s,background .18s,border-color .18s}.btn:hover:not(:disabled){transform:translateY(-1px)}.btn-primary{color:#17150e;background:linear-gradient(180deg,#dfc77e,#b8974f);box-shadow:0 10px 30px rgba(190,153,75,.16)}.btn-primary:hover{box-shadow:0 13px 36px rgba(190,153,75,.28)}.btn-ghost{color:#d6d1c3;border:1px solid #35382e;background:#171914}.btn-ghost:hover{background:#1e211a;border-color:#484a3c}.btn-discord{background:#5865f2;color:white}.btn.is-disabled{opacity:.45;cursor:not-allowed}.select-control{height:43px;border:1px solid #34372e;background:#151813;color:#d9d6cc;border-radius:10px;padding:0 36px 0 12px;outline:none}.select-control:focus{border-color:#706649}

.login-page{min-height:100vh;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 22%,#181a13 0,#0b0c09 40%,#070806 72%)}.login-page:after{content:"";position:fixed;inset:auto 0 0;height:38vh;background:linear-gradient(transparent,rgba(196,163,83,.04));pointer-events:none}.login-runes{position:fixed;inset:0;opacity:.12;background:repeating-radial-gradient(circle at 50% 50%,transparent 0 92px,rgba(216,189,116,.25) 93px 94px,transparent 95px 152px);mask-image:radial-gradient(circle,black,transparent 65%)}.login-panel{width:min(560px,calc(100vw - 36px));text-align:center;padding:42px 46px 36px;border:1px solid #303226;background:rgba(15,17,13,.8);border-radius:24px;box-shadow:0 35px 100px rgba(0,0,0,.5);backdrop-filter:blur(14px);position:relative;z-index:2}.login-panel:before{content:"";position:absolute;inset:-1px;border-radius:24px;pointer-events:none;background:linear-gradient(135deg,rgba(223,199,126,.22),transparent 24%,transparent 78%,rgba(184,97,66,.11));mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;padding:1px}.login-mark{width:88px;height:104px;margin:0 auto 18px;color:var(--gold)}.login-mark img{color:var(--gold);filter:drop-shadow(0 0 30px rgba(200,173,106,.28))}.login-panel h1{font-size:48px}.login-lead{color:#a09f95;line-height:1.65;max-width:420px;margin:15px auto 24px}.login-actions{display:flex;flex-direction:column;gap:10px}.login-actions .btn{width:100%;height:50px}.login-actions small{color:#696c64;font-size:11px;margin:-3px 0 6px}.login-actions code{color:#a9a183}.login-feature-row{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:25px;color:#77786e;font-size:10px;text-transform:uppercase;letter-spacing:1px}.login-feature-row i{width:3px;height:3px;border-radius:50%;background:#5e5742}

.pack-page-grid{display:grid;grid-template-columns:minmax(560px,1fr) 340px;gap:24px;align-items:stretch}.pack-stage-card,.pack-stats-panel,.showcase-panel,.achievement-progress{border:1px solid #272a22;background:linear-gradient(180deg,rgba(19,22,17,.9),rgba(13,15,12,.94));border-radius:var(--radius);box-shadow:var(--shadow)}.pack-stage-card{min-height:650px;padding:34px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;position:relative}.pack-stage-card:before{content:"";position:absolute;width:540px;height:540px;border:1px solid rgba(200,173,106,.06);border-radius:50%;box-shadow:0 0 0 80px rgba(200,173,106,.018),0 0 0 160px rgba(200,173,106,.012)}.pack-scene{height:370px;width:320px;position:relative;display:grid;place-items:center;perspective:1000px}.pack-shadow{position:absolute;width:190px;height:34px;background:#000;filter:blur(16px);opacity:.65;bottom:17px;border-radius:50%}.pack-object{width:212px;height:310px;border:0;color:#d7c37f;background:linear-gradient(145deg,#292b23 0%,#11130f 27%,#33342a 48%,#11130f 72%,#282a22 100%);clip-path:polygon(3% 0,8% 2%,13% 0,18% 2%,23% 0,28% 2%,33% 0,38% 2%,43% 0,48% 2%,53% 0,58% 2%,63% 0,68% 2%,73% 0,78% 2%,83% 0,88% 2%,93% 0,98% 2%,100% 98%,95% 100%,90% 98%,85% 100%,80% 98%,75% 100%,70% 98%,65% 100%,60% 98%,55% 100%,50% 98%,45% 100%,40% 98%,35% 100%,30% 98%,25% 100%,20% 98%,15% 100%,10% 98%,5% 100%,0 98%);box-shadow:0 25px 50px rgba(0,0,0,.55),0 0 45px rgba(200,173,106,.09);position:relative;cursor:pointer;transform:rotateX(2deg) rotateY(-2deg);transition:transform .3s,filter .3s}.pack-object:hover{transform:translateY(-5px) rotateX(2deg) rotateY(2deg);filter:brightness(1.09)}.pack-foil{position:absolute;inset:0;background:linear-gradient(115deg,transparent 15%,rgba(255,255,255,.08) 25%,transparent 38% 63%,rgba(202,178,113,.07) 71%,transparent 85%);mix-blend-mode:screen}.pack-object:before{content:"";position:absolute;inset:12px;border:1px solid rgba(215,195,127,.25);clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}.pack-sigil{position:absolute;width:92px;height:122px;left:60px;top:52px;color:var(--gold);filter:drop-shadow(0 0 18px rgba(200,173,106,.28))}.pack-title{position:absolute;left:0;right:0;top:184px;font-family:Georgia,serif;font-size:22px;line-height:.95;letter-spacing:1.7px;color:#e4d39d}.pack-subtitle{position:absolute;left:0;right:0;top:235px;font-size:9px;font-weight:800;letter-spacing:2.2px;color:#80765a}.pack-runes{position:absolute;left:0;right:0;bottom:35px;font-size:9px;letter-spacing:4px;color:#5f5a48}.open-pack-btn{min-width:190px;position:relative;z-index:2}.pack-caption{color:#72756b;font-size:11px;margin:10px 0 0;position:relative;z-index:2}.dev-fx-panel{width:min(560px,100%);display:grid;grid-template-columns:8px 1fr auto;gap:12px;align-items:center;border:1px solid #31342a;background:#151713;border-radius:12px;padding:12px 13px;margin-top:26px;position:relative;z-index:2}.dev-dot{width:7px;height:7px;border-radius:50%;background:#b15f43;box-shadow:0 0 10px rgba(177,95,67,.45)}.dev-fx-panel div{display:flex;flex-direction:column}.dev-fx-panel strong{font-size:12px}.dev-fx-panel small{color:#73766d;font-size:10px;margin-top:2px}.dev-fx-panel select{min-width:170px;height:37px;font-size:11px}.pack-stats-panel{padding:27px}.panel-kicker{font-size:9px;letter-spacing:2px;color:#857950;font-weight:800}.pack-stats-panel h2{font-family:Georgia,serif;font-weight:500;font-size:27px;margin:9px 0 8px}.pack-stats-panel>p{font-size:12px;color:#83867c;line-height:1.6;margin-bottom:25px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.stat-grid.compact{grid-template-columns:1fr 1fr}.stat-grid>div{border:1px solid #292c24;background:#10120f;border-radius:13px;padding:18px}.stat-grid strong{display:block;font-family:Georgia,serif;font-size:26px;color:#ddcea1;font-weight:500}.stat-grid span{display:block;color:#75786f;font-size:10px;margin-top:4px}.v1-note{display:flex;gap:11px;border-top:1px solid #282b23;margin-top:26px;padding-top:21px;color:#777b71}.v1-note>span{color:var(--gold);font-size:18px}.v1-note p{font-size:11px;line-height:1.55;margin:0}.v1-note strong{color:#bdb6a1}.empty-state{min-height:360px;padding:50px 25px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;color:#878a80}.empty-state img{width:70px;height:90px;color:#817752;opacity:.55;margin-bottom:15px}.empty-state h2{font-family:Georgia,serif;font-weight:500;color:#ddd8c9;margin:0 0 7px}.empty-state p{font-size:12px;max-width:500px;line-height:1.6}.empty-state code{display:block;max-width:100%;padding:10px 13px;border:1px solid #303328;background:#0b0d0a;border-radius:8px;color:#a49c7f;word-break:break-all;margin:6px 0}.empty-state .btn{margin-top:10px}

.opening-overlay{position:fixed;inset:0;background:#060705;z-index:100;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .35s;overflow:hidden}.opening-overlay.visible{opacity:1;pointer-events:auto}.opening-vignette{position:absolute;inset:0;background:radial-gradient(circle at center,rgba(90,82,54,.13),transparent 36%),radial-gradient(circle at center,transparent 36%,rgba(0,0,0,.84) 87%);transition:background .45s}.opening-overlay.fx-ur .opening-vignette{background:radial-gradient(circle at center,rgba(195,101,50,.25),transparent 36%),radial-gradient(circle at center,transparent 28%,rgba(0,0,0,.9) 84%)}.opening-overlay.fx-l .opening-vignette{background:radial-gradient(circle at center,rgba(230,196,103,.34),transparent 31%),radial-gradient(circle at center,transparent 27%,rgba(0,0,0,.91) 82%)}.opening-sigil-wrap{position:absolute;width:600px;height:600px;display:grid;place-items:center;opacity:.08;transition:.5s;pointer-events:none}.opening-sigil-wrap img{width:300px;height:430px;color:#cab36e}.fx-l .opening-sigil-wrap{opacity:.38;animation:sigilPulse 1.8s ease-in-out infinite}.fx-ur .opening-sigil-wrap{opacity:.18;filter:sepia(1) saturate(2)}@keyframes sigilPulse{50%{transform:scale(1.09);filter:drop-shadow(0 0 45px rgba(235,202,112,.45))}}
.opening-pack{position:absolute;width:205px;height:300px;background:linear-gradient(145deg,#2b2d24,#11130f 32%,#34362b 55%,#10120f);display:grid;place-items:center;clip-path:polygon(2% 0,8% 2%,14% 0,20% 2%,26% 0,32% 2%,38% 0,44% 2%,50% 0,56% 2%,62% 0,68% 2%,74% 0,80% 2%,86% 0,92% 2%,98% 0,100% 98%,92% 100%,84% 98%,76% 100%,68% 98%,60% 100%,52% 98%,44% 100%,36% 98%,28% 100%,20% 98%,12% 100%,4% 98%,0 100%);box-shadow:0 0 70px rgba(193,166,93,.13);transition:transform .65s cubic-bezier(.4,.1,.2,1),opacity .3s}.opening-pack img{width:85px;color:#d1ba74}.opening-pack span{position:absolute;bottom:45px;font-family:Georgia,serif;font-size:14px;letter-spacing:2px;color:#cdb977}.opening-pack.burst{transform:scale(1.2) rotate(-5deg);opacity:0;filter:blur(4px)}.opening-pack.burst:before,.opening-pack.burst:after{content:"";position:absolute;inset:0;border:1px solid #d2b96e;animation:burstRing .7s ease-out forwards}@keyframes burstRing{to{transform:scale(2.3);opacity:0}}
.reveal-zone{position:relative;z-index:4;width:min(1340px,94vw);display:flex;flex-direction:column;align-items:center}.reveal-instruction{color:#8a8d82;font-size:12px;letter-spacing:1px;margin:0 0 22px;opacity:0;transform:translateY(8px);transition:.3s}.reveal-instruction.show{opacity:1;transform:none}.reveal-cards{display:flex;gap:17px;align-items:center;justify-content:center;perspective:1600px}.reveal-card{width:205px;height:310px;position:relative;transform-style:preserve-3d;transform:translateY(45px) scale(.88) rotateY(0);opacity:0;transition:transform .72s cubic-bezier(.2,.8,.2,1),opacity .45s,filter .25s;cursor:pointer}.reveal-card.dealt{opacity:1;transform:translateY(0) scale(.93)}.reveal-card.active{transform:translateY(-7px) scale(1);filter:drop-shadow(0 15px 28px rgba(0,0,0,.45))}.reveal-card.flipped{transform:translateY(0) scale(1) rotateY(180deg);cursor:default}.reveal-card .face{position:absolute;inset:0;backface-visibility:hidden;border-radius:15px;overflow:hidden;border:1px solid #3c3e33}.reveal-card .back{background:radial-gradient(circle at 50% 38%,#303127 0,#141611 47%,#090a08 100%);display:grid;place-items:center;box-shadow:inset 0 0 0 7px #10120e,inset 0 0 0 8px rgba(193,168,98,.28)}.reveal-card .back:before{content:"";position:absolute;inset:15px;border:1px solid rgba(200,175,103,.26);border-radius:10px}.reveal-card .back img{width:78px;height:110px;color:#9c8b5b;opacity:.8}.reveal-card .front{transform:rotateY(180deg);background:#171914;display:flex;flex-direction:column;box-shadow:0 17px 45px rgba(0,0,0,.46)}.reveal-art{height:205px;margin:9px 9px 0;border-radius:10px 10px 6px 6px;background:radial-gradient(circle at 50% 45%,#404235,#171914 65%);display:grid;place-items:center;position:relative;overflow:hidden}.reveal-art img{width:90%;height:90%;object-fit:contain;filter:drop-shadow(0 10px 17px rgba(0,0,0,.45))}.reveal-info{padding:12px 13px;min-height:96px}.reveal-info small{font-size:8px;letter-spacing:1.1px;text-transform:uppercase;color:#73766b}.reveal-info h3{font-family:Georgia,serif;font-size:15px;line-height:1.12;margin:6px 0 0;font-weight:600}.reveal-card .rarity-badge{z-index:5}.new-tag{position:absolute;right:9px;top:9px;padding:5px 7px;border-radius:7px;background:rgba(12,13,10,.82);font-size:8px;font-weight:900;letter-spacing:.8px;color:#d7c581;z-index:5}.opening-actions{display:none;gap:10px;margin-top:30px}.opening-actions.show{display:flex}.rarity-splash{position:absolute;z-index:8;top:9%;left:50%;transform:translate(-50%,-12px) scale(.92);opacity:0;text-align:center;pointer-events:none;transition:.3s}.rarity-splash small{display:block;font-size:9px;letter-spacing:3px;color:#9b8c66;margin-bottom:3px}.rarity-splash strong{font-family:Georgia,serif;font-size:46px;font-weight:500;letter-spacing:5px}.rarity-splash.show{opacity:1;transform:translate(-50%,0) scale(1)}.fx-ur .rarity-splash strong{color:#dc8c56;text-shadow:0 0 30px rgba(213,111,52,.45)}.fx-l .rarity-splash strong{color:#f2da8a;text-shadow:0 0 40px rgba(242,218,138,.55)}.particles{position:absolute;inset:0;pointer-events:none;z-index:3}.particle{position:absolute;left:50%;top:50%;width:var(--s);height:var(--s);border-radius:50%;background:#d8a065;box-shadow:0 0 9px currentColor;animation:particleFly 1.35s cubic-bezier(.15,.6,.2,1) forwards;animation-delay:var(--d)}.fx-l .particle{background:#efd27d}.fx-ur .particle{background:#d17746}@keyframes particleFly{0%{transform:translate(-50%,-50%) scale(.2);opacity:0}15%{opacity:1}100%{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(var(--r)) scale(0);opacity:0}}

.rarity-badge{position:absolute;left:9px;top:9px;min-width:28px;height:25px;padding:0 7px;border-radius:7px;display:grid;place-items:center;background:#66705f;color:#0e110d;font-size:9px;font-weight:950;letter-spacing:.4px}.rarity-pc .rarity-badge{background:#8197a7}.rarity-r .rarity-badge{background:#9a86b4}.rarity-sr .rarity-badge{background:#bd7c94}.rarity-ur .rarity-badge{background:#ce814a}.rarity-l .rarity-badge{background:#e4c25d}.rarity-ur .front,.collection-card.rarity-ur{border-color:rgba(206,129,74,.58);box-shadow:0 0 30px rgba(206,129,74,.09)}.rarity-l .front,.collection-card.rarity-l{border-color:rgba(228,194,93,.65);box-shadow:0 0 36px rgba(228,194,93,.13)}.rarity-l .front:after,.collection-card.rarity-l:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 15%,rgba(255,241,185,.13) 35%,transparent 47%);transform:translateX(-120%);animation:legendSheen 4.2s ease-in-out infinite}@keyframes legendSheen{0%,60%{transform:translateX(-120%)}85%,100%{transform:translateX(130%)}}

.collection-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 190px 190px;gap:12px;margin-bottom:13px}.search-field{height:46px;border:1px solid #2d3028;background:#141713;border-radius:11px;display:flex;align-items:center;padding:0 14px;gap:10px;color:#676b62}.search-field input{flex:1;border:0;outline:0;background:transparent;color:#ddd9cd;font-size:13px}.search-field input::placeholder{color:#62665e}.collection-summary{display:flex;gap:20px;align-items:center;color:#777b71;font-size:11px;margin:0 0 22px;padding-left:3px}.collection-summary strong{color:#b8b5a8}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:18px}.collection-card{position:relative;min-width:0;border-radius:15px;border:1px solid #30332a;background:#151814;overflow:hidden;transition:transform .22s,border-color .22s,box-shadow .22s;transform-style:preserve-3d}.collection-card:hover{transform:translateY(-5px);border-color:#44473a;box-shadow:0 18px 45px rgba(0,0,0,.34)}.card-art-wrap{height:220px;margin:8px 8px 0;border-radius:10px;background:radial-gradient(circle at 50% 40%,#383a30 0,#1b1d18 55%,#10120f 100%);display:grid;place-items:center;overflow:hidden;position:relative}.card-art{width:88%;height:88%;object-fit:contain;filter:drop-shadow(0 10px 15px rgba(0,0,0,.52));transition:transform .25s}.collection-card:hover .card-art{transform:scale(1.04)}.card-sheen{position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,.045) 49%,transparent 66%);transform:translateX(-100%);transition:.5s}.collection-card:hover .card-sheen{transform:translateX(100%)}.quantity-badge{position:absolute;right:9px;top:9px;background:rgba(9,10,8,.82);border:1px solid #45473a;border-radius:7px;padding:5px 7px;font-size:9px;color:#c6c0af;z-index:3}.card-info{padding:13px 14px 12px}.card-info small{color:#777a70;font-size:8px;text-transform:uppercase;letter-spacing:1px}.card-info h3{font-family:Georgia,serif;font-size:16px;line-height:1.2;min-height:39px;margin:6px 0 10px;font-weight:600}.card-footer{border-top:1px solid #2b2e26;padding-top:9px;display:flex;justify-content:space-between;align-items:center;color:#74786e;font-size:9px}.mini-sigil{color:#7f7452}.locked-overlay{position:absolute;inset:0;background:rgba(7,8,6,.72);backdrop-filter:grayscale(1) brightness(.55);display:grid;place-items:end center;padding:20px;z-index:8}.locked-overlay span{border:1px solid #3b3d35;background:#11130f;border-radius:999px;padding:6px 10px;color:#75786f;font-size:9px}.collection-card.is-locked{filter:saturate(.5)}.no-filter-results{display:none;text-align:center;color:#73776d;font-size:12px;margin-top:35px}.catalog-banner{border:1px solid #2a2d24;background:#121510;border-radius:15px;padding:18px 20px;margin-bottom:17px}.catalog-banner>div:first-child{display:flex;align-items:baseline;gap:10px}.catalog-banner small{font-size:8px;letter-spacing:1.5px;color:#80734f}.catalog-banner strong{font-family:Georgia,serif;font-size:24px;color:#ded1aa}.catalog-banner span{font-size:10px;color:#75796f}.progress-track{height:7px;background:#20231c;border-radius:999px;overflow:hidden;margin-top:12px}.progress-track i{display:block;height:100%;background:linear-gradient(90deg,#837348,#d3b96c);border-radius:inherit}

.profile-hero{border:1px solid #292c24;background:#121510;border-radius:16px;padding:22px 24px;display:flex;align-items:center;gap:16px}.profile-avatar{width:72px;height:72px;border-radius:50%;border:1px solid #4a4b3b;object-fit:cover}.profile-hero h2{font-family:Georgia,serif;font-size:27px;font-weight:500;margin:5px 0 2px}.profile-hero p{color:#777b71;margin:0;font-size:11px}.discord-pill{font-size:8px;letter-spacing:1.4px;color:#a5a08d}.profile-id{margin-left:auto;color:#6d7067;font-size:10px}.profile-stats{margin:16px 0 20px}.profile-stats>div{background:#121510}.showcase-panel{padding:24px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:17px}.section-heading small{font-size:8px;letter-spacing:1.5px;color:#897b54}.section-heading h2{font-family:Georgia,serif;font-weight:500;margin:5px 0 0;font-size:24px}.section-heading>span{color:#686b63;font-size:9px}.showcase-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.showcase-empty{border:1px dashed #34372f;border-radius:14px;padding:45px;text-align:center;color:#73766c;font-size:12px}.achievement-progress{padding:18px 20px;margin-bottom:18px}.achievement-progress>div:first-child{display:flex;justify-content:space-between;color:#8c8f85;font-size:11px}.achievement-progress strong{color:#d6c581}.achievement-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.achievement{border:1px solid #2a2d25;background:#121510;border-radius:15px;padding:18px;display:grid;grid-template-columns:45px 1fr auto;gap:13px;align-items:center}.achievement-icon{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;background:#1c1f19;border:1px solid #32362b;color:#696d64;font-size:21px}.achievement h3{font-size:13px;margin:0 0 4px}.achievement h3 span{color:#c8ad6a;margin-left:5px}.achievement p{margin:0;color:#70746a;font-size:10px}.achievement>small{font-size:8px;text-transform:uppercase;letter-spacing:1px;color:#575b54}.achievement.unlocked{border-color:rgba(200,173,106,.25);background:linear-gradient(120deg,rgba(200,173,106,.06),#121510 35%)}.achievement.unlocked .achievement-icon{color:#d0b86f;border-color:#5a5036;background:#1e1b12}.achievement.unlocked>small{color:#8f8057}
@media(max-width:1100px){:root{--sidebar:210px}.main-content{padding:28px 25px}.pack-page-grid{grid-template-columns:1fr}.pack-stats-panel{order:-1}.showcase-grid{grid-template-columns:repeat(2,1fr)}.reveal-card{width:165px;height:260px}.reveal-art{height:168px}.reveal-cards{gap:9px}}
@media(max-width:760px){.sidebar{position:fixed;width:100%;height:67px;bottom:auto;padding:9px 13px;flex-direction:row;align-items:center}.brand{padding:0;margin-right:auto}.brand small{display:none}.brand-sigil{width:28px;height:38px}.brand strong{font-size:18px}.nav-list{position:fixed;left:0;right:0;bottom:0;height:64px;background:#10120f;border-top:1px solid #292c24;display:flex;flex-direction:row;justify-content:space-around;padding:6px;z-index:30}.nav-item{height:52px;padding:0 11px;flex-direction:column;gap:2px;justify-content:center;font-size:8px}.nav-item:nth-child(n+6){display:none}.nav-icon,.nav-icon svg{width:18px;height:18px}.sidebar-user{margin:0;border:0;padding:0}.sidebar-user-meta{display:none}.sidebar-user .icon-btn{display:none}.avatar{width:34px;height:34px}.main-content{margin-left:0;width:100%;padding:94px 16px 86px}.page-header h1{font-size:31px}.page-subtitle{font-size:12px}.pack-stage-card{min-height:570px;padding:20px}.pack-page-grid{display:block}.pack-stats-panel{margin-bottom:16px}.pack-stats-panel .stat-grid{grid-template-columns:1fr 1fr}.dev-fx-panel{grid-template-columns:8px 1fr}.dev-fx-panel select{grid-column:1/-1;width:100%}.collection-toolbar{grid-template-columns:1fr}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card-art-wrap{height:160px}.card-info h3{font-size:13px}.collection-summary{flex-wrap:wrap;gap:8px 14px}.achievement-grid{grid-template-columns:1fr}.profile-hero{align-items:flex-start}.profile-id{display:none}.stat-grid{grid-template-columns:1fr 1fr}.showcase-grid{grid-template-columns:1fr 1fr}.opening-overlay{align-items:flex-start;padding-top:16vh}.reveal-cards{width:94vw;display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.reveal-card{width:100%;height:210px}.reveal-card:nth-child(n+4){grid-column:auto}.reveal-art{height:132px;margin:6px}.reveal-info{padding:7px;min-height:66px}.reveal-info h3{font-size:10px}.rarity-splash{top:5%}.rarity-splash strong{font-size:30px}.login-panel{padding:35px 22px}.login-panel h1{font-size:40px}}


.main-content{
  width:calc(100vw - var(--sidebar));
  max-width:none;
  min-width:0;
  padding:34px 42px 54px;
}
.pack-page-grid{
  width:100%;
  min-height:clamp(650px,calc(100vh - 165px),900px);
  grid-template-columns:minmax(0,1fr) minmax(330px,390px);
  gap:28px;
}
.pack-stage-card{
  min-height:clamp(650px,calc(100vh - 165px),900px);
  padding:42px;
}
.pack-stats-panel{padding:32px;height:100%}
.pack-stage-card:before{width:650px;height:650px;box-shadow:0 0 0 95px rgba(200,173,106,.018),0 0 0 190px rgba(200,173,106,.011)}
.pack-scene{height:430px;width:390px}
.pack-shadow{width:225px;height:40px;bottom:13px}
.pack-object{width:245px;height:360px}
.pack-object-art{background:#11130f;isolation:isolate}
.pack-cover{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;filter:saturate(.92) contrast(1.04) brightness(.82);transform:scale(1.015)}
.pack-cover-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(4,6,5,.10) 0%,rgba(4,5,4,.05) 42%,rgba(6,7,5,.82) 82%,rgba(6,7,5,.95) 100%),radial-gradient(circle at 50% 38%,transparent 25%,rgba(0,0,0,.22) 82%)}
.pack-object:before,.pack-foil,.pack-top-tear,.pack-sigil,.pack-title,.pack-subtitle{z-index:3}
.pack-sigil.pack-sigil-small{width:45px;height:60px;left:calc(50% - 22px);top:auto;bottom:74px;opacity:.86;filter:drop-shadow(0 0 15px rgba(220,190,106,.48))}
.pack-title{top:auto;bottom:47px;font-size:16px;line-height:1;letter-spacing:2.2px;text-shadow:0 2px 12px rgba(0,0,0,.9)}
.pack-subtitle{top:auto;bottom:27px;font-size:8px;color:#c8b77e;text-shadow:0 2px 8px #000}
.pack-caption-row{position:relative;z-index:3;display:flex;align-items:center;gap:14px;margin-top:9px}
.pack-caption-row .pack-caption{margin:0}
.sound-toggle{border:0;background:transparent;color:#898d82;font-size:10px;cursor:pointer;padding:4px 2px;transition:color .2s,opacity .2s}
.sound-toggle:hover{color:#d3c58f}.sound-toggle.is-off{opacity:.62}
.dev-fx-panel{width:min(680px,100%);margin-top:22px}
.dev-fx-panel{grid-template-columns:8px minmax(180px,1fr) auto}
.dev-test-toggle{height:36px;display:inline-flex;align-items:center;gap:8px;border:1px solid #3b3d32;background:#11130f;border-radius:10px;padding:0 11px;color:#d9d2bd;font-size:11px;font-weight:800;cursor:pointer}
.dev-test-toggle input,.dev-rarity-switches input{accent-color:#c8ad6a}
.dev-rarity-switches{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;border:0;margin:2px 0 0;padding:0}
.dev-rarity-switches label{height:34px;display:inline-flex;align-items:center;gap:7px;border:1px solid #303329;background:#10120f;border-radius:9px;padding:0 10px;color:#8f9388;font-size:10px;font-weight:800;cursor:pointer;transition:border-color .18s,color .18s,background .18s}
.dev-rarity-switches label:has(input:checked){border-color:rgba(200,173,106,.58);background:rgba(200,173,106,.12);color:#ead99d}


.opening-pack{isolation:isolate;overflow:hidden;background:#11130f}
.opening-pack .opening-pack-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;filter:saturate(.94) contrast(1.05) brightness(.82)}
.opening-pack-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.05) 48%,rgba(5,6,4,.86) 100%)}
.opening-pack .opening-pack-sigil{position:absolute;width:42px;height:58px;left:calc(50% - 21px);bottom:56px;z-index:3;filter:drop-shadow(0 0 16px rgba(220,190,106,.5))}
.opening-pack>span:last-child{z-index:4;bottom:31px;text-shadow:0 2px 10px #000}


.card-grid{gap:24px 20px;padding:12px 8px 28px;margin:-12px -8px -28px}
.collection-card{transform-origin:center center;will-change:transform;overflow:visible}
.collection-card .card-art-wrap,.collection-card .card-info{position:relative;z-index:1}
.collection-card:hover{border-color:#57594a;box-shadow:0 28px 70px rgba(0,0,0,.60),0 0 35px rgba(200,173,106,.10)}
.collection-card:hover .card-art{transform:scale(1.13)}
.reveal-card.flipped:hover{transform:translateY(-18px) scale(1.14) rotateY(180deg);z-index:30;filter:drop-shadow(0 24px 40px rgba(0,0,0,.62));transition-duration:.25s}


.showcase-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}

@media(max-width:1450px){
  .pack-page-grid{grid-template-columns:minmax(0,1fr) 330px}
  .main-content{padding-left:30px;padding-right:30px}
  .showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:1100px){
  .main-content{width:calc(100vw - var(--sidebar));padding:28px 25px 55px}
  .pack-page-grid{grid-template-columns:1fr;min-height:auto}
  .pack-stage-card{min-height:680px}
  .pack-stats-panel{height:auto}
  .showcase-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .main-content{width:100%;padding:94px 16px 86px}
  .pack-stage-card{min-height:590px;padding:22px}
  .pack-scene{width:300px;height:370px;max-width:100%}
  .pack-object{width:212px;height:310px}
  .pack-caption-row{flex-direction:column;gap:5px}
  .showcase-grid{grid-template-columns:1fr 1fr}
  .collection-card{overflow:hidden}
}
.showcase-slot-empty{min-height:330px;border:1px dashed #383b31;border-radius:15px;background:rgba(12,14,11,.35);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;color:#555a50}
.showcase-slot-empty span{font-size:27px;color:#6e664d;opacity:.7}.showcase-slot-empty small{font-size:9px;text-transform:uppercase;letter-spacing:1.3px}
@media(max-width:760px){.showcase-slot-empty{min-height:230px}}





.reveal-card{
  transform-style:flat;
}
.reveal-card .flip-inner{
  position:absolute;
  inset:0;
  transform-style:preserve-3d;
  transition:transform .72s cubic-bezier(.2,.8,.2,1);
}
.reveal-card .face{
  inset:0;
}
.reveal-card.flipped{
  transform:translateY(0) scale(1);
  cursor:default;
}
.reveal-card.flipped .flip-inner{
  transform:rotateY(180deg);
}
.reveal-card.flipped:hover{
  transform:translateY(-26px) scale(1.22);
  z-index:40;
  filter:drop-shadow(0 30px 52px rgba(0,0,0,.72));
  transition-duration:.22s;
}


.reveal-card .back{
  padding:0;
  background:#080906;
  isolation:isolate;
}
.reveal-card .back:before{
  z-index:3;
  pointer-events:none;
  box-shadow:inset 0 0 28px rgba(0,0,0,.55);
}
.reveal-card .back img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  object-position:center;
  opacity:1;
  filter:saturate(.94) contrast(1.05) brightness(.72);
}
.reveal-card .card-back-shade{
  position:absolute;
  inset:0;
  z-index:2;
  background:
    linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.08) 55%,rgba(0,0,0,.52)),
    radial-gradient(circle at 50% 42%,transparent 20%,rgba(0,0,0,.26) 100%);
  pointer-events:none;
}


.collection-card:hover .card-art{
  transform:scale(1.20);
}



.brand.brand-text-only{gap:0;padding-left:9px}
.brand.brand-text-only span{display:flex}
.brand-sigil,.login-mark,.opening-sigil-wrap,.pack-sigil,.opening-pack-sigil{display:none!important}
.avatar-fallback,.profile-avatar-fallback{
    display:grid;place-items:center;flex:0 0 auto;color:#d7c27e;
    background:radial-gradient(circle at 35% 30%,rgba(215,194,126,.16),transparent 42%),#171914;
    border:1px solid #3a3b30;font-family:Georgia,serif;font-weight:700;line-height:1;user-select:none
}
.avatar-fallback{width:38px;height:38px;border-radius:50%;font-size:16px}
.profile-avatar-fallback{width:86px;height:86px;border-radius:50%;font-size:32px}
.empty-state{background:none}



.reveal-card.flipped .reveal-art img{cursor:zoom-in}
.card-image-viewer{position:fixed;inset:0;z-index:250;display:grid;place-items:center;padding:34px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}
.card-image-viewer.visible{opacity:1;visibility:visible;pointer-events:auto}
.card-image-viewer-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;margin:0;padding:0;cursor:zoom-out;background:radial-gradient(circle at center,rgba(18,20,15,.72),rgba(0,0,0,.95) 72%);backdrop-filter:blur(10px)}
.card-image-viewer-content{position:relative;z-index:1;margin:0;max-width:min(86vw,1050px);max-height:90vh;display:flex;flex-direction:column;align-items:center;gap:15px;transform:scale(.82) translateY(18px);opacity:0;transition:transform .30s cubic-bezier(.16,.82,.28,1),opacity .22s ease;pointer-events:none}
.card-image-viewer.visible .card-image-viewer-content{transform:scale(1) translateY(0);opacity:1}
.card-image-viewer-content img{display:block;width:min(72vw,760px);height:auto;max-height:78vh;object-fit:contain;cursor:zoom-out;pointer-events:auto;image-rendering:auto;filter:drop-shadow(0 34px 70px rgba(0,0,0,.78))}
.card-image-viewer-content figcaption{display:flex;flex-direction:column;align-items:center;gap:5px;text-align:center;text-shadow:0 2px 9px #000}
.card-image-viewer-content figcaption strong{color:#ece6d7;font-family:Georgia,serif;font-size:clamp(20px,2.2vw,32px);font-weight:600}
.card-image-viewer-content figcaption small{color:#8e9186;font-size:9px;letter-spacing:1.5px;text-transform:uppercase}
.card-image-viewer-open{overflow:hidden}



.pack-action-row{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:8px}
.btn-mega{border:1px solid #7d5b2d;background:linear-gradient(135deg,#2a1d10,#5e3a15);color:#f1d78c}
.btn-mega:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 30px rgba(193,129,43,.18)}
.btn:disabled,.sell-duplicate-btn:disabled{opacity:.38;cursor:not-allowed;transform:none!important}
.inventory-stack{display:grid;gap:8px;margin:18px 0}
.inventory-line{display:flex;align-items:center;justify-content:space-between;border:1px solid #292b25;background:#121410;border-radius:10px;padding:11px 13px;color:#94988c}
.inventory-line strong{font-size:20px;color:#e7dfca}
.inventory-line.points-line strong{color:#d9bb67}
.display-box{border-top:1px solid #292b25;padding-top:18px;margin-top:18px;display:grid;grid-template-columns:105px 1fr;gap:15px;align-items:center}
.display-pack-stack{position:relative;height:130px}
.display-pack-stack img{position:absolute;width:76px;height:120px;object-fit:cover;border-radius:6px;border:1px solid #6c5931;box-shadow:0 10px 25px #000}
.display-pack-stack img:nth-child(1){left:0;transform:rotate(-10deg)}
.display-pack-stack img:nth-child(2){left:14px;transform:rotate(0deg)}
.display-pack-stack img:nth-child(3){left:28px;transform:rotate(10deg)}
.display-box small,.shop-kicker{font-size:9px;letter-spacing:1.7px;color:#9f8750}
.display-box h3{margin:4px 0 5px;color:#e8e1d2;font-family:Georgia,serif;font-size:22px}
.display-box p,.monthly-note{font-size:11px;line-height:1.5;color:#777c72}
.monthly-note{margin-top:12px}
.shop-link-card{margin-top:16px;border:1px solid #343228;border-radius:11px;padding:13px;display:flex;gap:11px;align-items:center;text-decoration:none;color:#d8d4c8;background:#121410}
.shop-link-card>span{font-size:21px;color:#c9a85a}
.shop-link-card div{display:flex;flex-direction:column;gap:2px}
.shop-link-card small{color:#797d72}

.duplicate-actions{border-top:1px solid rgba(255,255,255,.06);padding:8px;display:grid;gap:5px;background:#11130f}
.sell-duplicate-btn{border:1px solid #3b392e;border-radius:7px;background:#181a15;color:#cfc9b9;padding:7px 8px;font-size:10px;cursor:pointer}
.sell-duplicate-btn:hover{border-color:#8b7746;color:#ead895;background:#1d1d15}
.sell-duplicate-btn.sell-all{color:#b6b2a7;font-size:9px}

.shop-layout{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(430px,1.6fr);gap:16px;margin-bottom:16px}
.shop-wallet,.mega-shop-card,.sell-values-panel{border:1px solid #292b25;border-radius:14px;background:linear-gradient(145deg,#11130f,#0c0e0b);padding:22px}
.shop-wallet{display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.shop-wallet>small{font-size:9px;letter-spacing:1.8px;color:#95804b}
.shop-wallet>strong{font-family:Georgia,serif;font-size:58px;line-height:1;color:#dbc06f;margin-top:8px}
.shop-wallet>span{color:#a7aa9f}
.shop-wallet p{color:#73786e;font-size:11px;line-height:1.5;max-width:280px}
.mega-shop-card{display:grid;grid-template-columns:220px 1fr;gap:26px;align-items:center;overflow:hidden}
.mega-art-stack{position:relative;height:270px}
.mega-art-stack img{position:absolute;left:50%;top:50%;width:155px;height:245px;object-fit:cover;border-radius:8px;border:1px solid #7b6233;box-shadow:0 24px 55px #000}
.mega-art-stack img:first-child{transform:translate(-66%,-50%) rotate(-8deg)}
.mega-art-stack img:last-child{transform:translate(-35%,-50%) rotate(8deg)}
.mega-shop-info h2{font-family:Georgia,serif;font-size:36px;color:#eee7d8;margin:5px 0}
.mega-shop-info p{color:#858a7f}
.mega-price{font-size:38px;color:#ddbd67;font-family:Georgia,serif;margin:16px 0}
.mega-price small{font-family:inherit;font-size:14px;color:#84887d}
.owned-mega{font-size:11px!important}
.sell-values-panel{margin-top:16px}
.sell-value-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin-top:14px}
.rarity-value{border:1px solid #32342d;border-radius:10px;padding:13px;text-align:center;background:#141611}
.rarity-value span{display:inline-grid;place-items:center;min-width:28px;height:24px;border-radius:7px;background:#3a3b33;color:#eee;font-weight:800;font-size:10px}
.rarity-value strong{display:block;font-size:24px;margin-top:9px;color:#e6dfd0}
.rarity-value small{color:#767b71;font-size:9px}
.economy-note{color:#73786f;font-size:11px;margin:13px 0 0}

.opening-overlay.mega-opening .reveal-cards{max-width:1500px;display:grid;grid-template-columns:repeat(5,minmax(150px,1fr));gap:12px}
.opening-overlay.mega-opening .reveal-card{width:auto;min-width:0}
.opening-overlay.mega-opening .reveal-card:nth-child(n+6){margin-top:5px}

.points-summary{color:#cfb35f!important}
.profile-stats{grid-template-columns:repeat(4,1fr)!important}

@media(max-width:1100px){
    .shop-layout{grid-template-columns:1fr}
    .sell-value-grid{grid-template-columns:repeat(3,1fr)}
    .opening-overlay.mega-opening .reveal-cards{grid-template-columns:repeat(5,minmax(125px,1fr))}
}
@media(max-width:760px){
    .display-box{grid-template-columns:1fr}
    .display-pack-stack{display:none}
    .mega-shop-card{grid-template-columns:1fr}
    .mega-art-stack{height:230px}
    .sell-value-grid{grid-template-columns:repeat(2,1fr)}
    .opening-overlay.mega-opening .reveal-cards{grid-template-columns:repeat(2,minmax(130px,1fr));overflow-y:auto;max-height:72vh}
    .profile-stats{grid-template-columns:repeat(2,1fr)!important}
    .card-image-viewer{padding:18px}
}



.game-selector{
    display:flex;
    align-items:center;
    gap:8px;
    width:100%;
    max-width:100%;
    margin:0 0 18px;
    padding:6px;
    border:1px solid #2b2e26;
    border-radius:12px;
    background:#10120f;
    overflow-x:auto;
    scrollbar-width:thin;
}
.game-choice{
    position:relative;
    min-width:150px;
    height:46px;
    flex:1 1 0;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:0 16px;
    border:1px solid transparent;
    border-radius:9px;
    background:transparent;
    color:#aeb1a6;
    cursor:pointer;
    text-align:center;
    transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease;
}
.game-choice:hover{
    border-color:#414437;
    background:#161914;
    color:#ebe7dc;
}
.game-choice.active{
    border-color:rgba(200,173,106,.55);
    background:linear-gradient(180deg,rgba(200,173,106,.18),rgba(200,173,106,.08));
    color:#ead99d;
    box-shadow:0 0 0 1px rgba(188,157,82,.10);
}
.game-choice img{
    display:none;
}
.game-choice strong{
    font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
    font-size:13px;
    line-height:1;
    font-weight:850;
    color:inherit;
    white-space:nowrap;
}
.game-choice small{
    min-width:24px;
    height:22px;
    display:inline-grid;
    place-items:center;
    border-radius:7px;
    background:#22251d;
    color:#7f8579;
    font-size:9px;
    font-weight:900;
}
.game-choice.active small{
    background:rgba(234,217,157,.16);
    color:#ead99d;
}
 .game-choice-name{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-width:0;
}
.game-favorite-star{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:22px;
    height:22px;
    flex:0 0 22px;
    border-radius:7px;
    color:#565b51;
    font-size:17px;
    line-height:1;
    cursor:pointer;
    user-select:none;
    transition:color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease;
}
.game-favorite-star:hover,
.game-favorite-star:focus-visible{
    color:#c8ad6a;
    background:rgba(200,173,106,.09);
    outline:none;
    transform:scale(1.08);
}
.game-favorite-star.is-favorite{
    color:#e7c65d;
    text-shadow:0 0 10px rgba(231,198,93,.38);
}
.game-favorite-star.is-saving{
    pointer-events:none;
    opacity:.55;
}
.collection-toolbar{
    grid-template-columns:minmax(240px,1fr) 170px 180px 180px!important;
}
@media(max-width:1000px){
    .collection-toolbar{grid-template-columns:1fr 1fr!important}
}
@media(max-width:700px){
    .game-selector{width:100%}
    .game-choice{flex:1;justify-content:center}
    .collection-toolbar{grid-template-columns:1fr!important}
}


.collection-recycle-panel,.trade-panel,.market-create-panel,.market-list-panel,.showcase-editor{
    border:1px solid #292c24;
    border-radius:14px;
    background:linear-gradient(145deg,#11130f,#0c0e0b);
    padding:18px;
    margin:0 0 18px;
}
.collection-recycle-panel{display:flex;align-items:center;justify-content:space-between;gap:16px}
.collection-recycle-panel strong{display:block;color:#ead99d}
.collection-recycle-panel small,.form-status{display:block;color:#777d72;font-size:11px;margin-top:4px}
.collection-recycle-actions{display:flex;gap:8px;flex-wrap:wrap}
.recycle-check-wrap{
    position:absolute;
    z-index:12;
    right:9px;
    bottom:9px;
    min-height:30px;
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:0 8px;
    border:1px solid #3b392e;
    border-radius:8px;
    background:rgba(10,12,9,.86);
    color:#d8d0b8;
    font-size:10px;
    font-weight:850;
    cursor:pointer;
}
.recycle-check-wrap input{accent-color:#c8ad6a}
.shop-layout{grid-template-columns:260px minmax(0,1fr)}
.shop-items-grid{display:grid;grid-template-columns:repeat(3,minmax(230px,1fr));gap:14px}
.shop-item-card{grid-template-columns:1fr;min-height:0;align-content:start}
.shop-item-card .mega-art-stack{transform:scale(.82)}
.trade-form,.market-form,.showcase-select-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    align-items:end;
}
.market-form{grid-template-columns:minmax(260px,1.4fr) minmax(120px,.55fr) minmax(240px,1.2fr) auto}
.trade-form label,.market-form label,.showcase-select-grid label{display:flex;flex-direction:column;gap:6px;min-width:0}
.trade-form label>span,.market-form label>span,.showcase-select-grid label>span{color:#8f875f;font-size:9px;font-weight:900;letter-spacing:1.2px;text-transform:uppercase}
.showcase-editor{margin-top:18px}
.showcase-select-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.showcase-select-grid select,.trade-form select,.market-form select{width:100%}
.market-list{display:grid;gap:14px}
.market-listing{
    display:grid;
    grid-template-columns:170px 1fr;
    gap:16px;
    align-items:center;
    border:1px solid #272a22;
    border-radius:12px;
    background:#10120f;
    padding:12px;
}
.market-listing-card .collection-card{max-width:170px}
.market-listing-card .card-art-wrap{height:145px}
.market-listing-card .card-info h3{font-size:12px;min-height:auto}
.market-listing-info small{font-size:10px;color:#8a8e83}
.market-listing-info h3{font-family:Georgia,serif;font-size:24px;margin:6px 0;color:#eee7d8}
.market-listing-info p{color:#c8bd9d;margin:0 0 14px}
@media(max-width:1100px){
    .shop-items-grid{grid-template-columns:1fr}
    .showcase-select-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .market-form{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
    .collection-recycle-panel,.trade-form,.market-form{display:flex;flex-direction:column;align-items:stretch}
    .showcase-select-grid{grid-template-columns:1fr}
    .market-listing{grid-template-columns:1fr}
}



.welcome-reward-overlay{
    position:fixed;
    inset:0;
    z-index:300;
    display:grid;
    place-items:center;
    padding:24px;
    background:rgba(0,0,0,.82);
    backdrop-filter:blur(10px);
    opacity:0;
    visibility:hidden;
    transition:opacity .22s ease,visibility .22s ease;
}
.welcome-reward-overlay.visible{
    opacity:1;
    visibility:visible;
}
.welcome-reward-card{
    width:min(760px,94vw);
    border:1px solid #5b4d2d;
    border-radius:18px;
    background:
        radial-gradient(circle at 50% 0%,rgba(210,178,92,.08),transparent 34%),
        linear-gradient(145deg,#141610,#090b08);
    padding:30px;
    box-shadow:0 38px 100px rgba(0,0,0,.72);
    text-align:center;
}
.welcome-reward-card h2{
    margin:5px 0 8px;
    color:#eee6d4;
    font-family:Georgia,serif;
    font-size:clamp(30px,4vw,46px);
}
.welcome-reward-card>p:not(.panel-kicker){
    margin:0 auto;
    max-width:540px;
    color:#858a7e;
}
.welcome-rewards{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin:26px 0;
}
.welcome-reward-item{
    min-height:245px;
    border:1px solid #2e3028;
    border-radius:14px;
    background:#10120e;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:7px;
    padding:18px;
}
.welcome-reward-item strong{
    color:#e7ddc7;
    font-family:Georgia,serif;
    font-size:22px;
}
.welcome-reward-item small{
    color:#757a70;
}
.welcome-pack-stack{
    position:relative;
    width:130px;
    height:145px;
    margin-bottom:4px;
}
.welcome-pack-stack img{
    position:absolute;
    left:50%;
    top:50%;
    width:78px;
    height:128px;
    object-fit:cover;
    border:1px solid #6d5a32;
    border-radius:6px;
    box-shadow:0 14px 28px rgba(0,0,0,.55);
}
.welcome-pack-stack img:nth-child(1){transform:translate(-72%,-50%) rotate(-11deg)}
.welcome-pack-stack img:nth-child(2){transform:translate(-50%,-52%)}
.welcome-pack-stack img:nth-child(3){transform:translate(-28%,-50%) rotate(11deg)}
.welcome-mega-art{
    width:95px;
    height:150px;
    object-fit:cover;
    border:1px solid #7a6031;
    border-radius:7px;
    box-shadow:0 15px 32px rgba(0,0,0,.58);
    margin-bottom:4px;
}
.welcome-claim-btn{
    min-width:min(420px,100%);
}
.booster-regen-card{
    border:1px solid #343128;
    border-radius:11px;
    padding:13px 14px;
    margin:14px 0 4px;
    background:#10120e;
    display:flex;
    flex-direction:column;
    gap:4px;
}
.booster-regen-card>span{
    color:#9b8247;
    font-size:8px;
    letter-spacing:1.6px;
}
.booster-regen-card strong{
    color:#e1dacb;
    font-size:15px;
}
.booster-regen-card small{
    color:#6e7469;
    font-size:9px;
}
@media(max-width:700px){
    .welcome-rewards{grid-template-columns:1fr}
    .welcome-reward-item{min-height:210px}
}



@media(max-width:760px){
    .card-image-viewer-content img{
        width:min(88vw,680px);
        max-height:76vh;
    }
}





.pack-stage-card:before{
    pointer-events:none;
}
.pack-action-row,
.open-mega-btn{
    position:relative;
    z-index:3;
}


.display-product-box{
    position:relative;
    width:112px;
    height:138px;
    flex:0 0 112px;
    margin:8px auto 12px;
    transform:rotateY(-7deg) rotateX(2deg);
    transform-style:preserve-3d;
    filter:drop-shadow(0 18px 24px rgba(0,0,0,.5));
}
.display-box-front{
    position:absolute;
    left:0;
    top:13px;
    width:94px;
    height:120px;
    border:1px solid #725f34;
    border-radius:5px 2px 3px 5px;
    overflow:hidden;
    background:#11130f;
}
.display-box-front img{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:.7;
}
.display-box-front:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(
        to bottom,
        rgba(5,6,4,.03),
        rgba(5,6,4,.58)
    );
}
.display-box-front span,
.display-box-front small{
    position:absolute;
    z-index:2;
    left:6px;
    right:6px;
    text-align:center;
    font-family:Georgia,serif;
    color:#ead28e;
    text-shadow:0 2px 5px #000;
}
.display-box-front span{
    bottom:24px;
    font-size:12px;
    letter-spacing:1px;
}
.display-box-front small{
    bottom:10px;
    font-size:6px;
    letter-spacing:1px;
}
.display-box-side{
    position:absolute;
    left:94px;
    top:19px;
    width:16px;
    height:114px;
    border:1px solid #514324;
    border-left:0;
    background:linear-gradient(90deg,#4c3d1f,#17160e);
    transform:skewY(-31deg);
    transform-origin:left top;
}
.display-box-top{
    position:absolute;
    left:5px;
    top:0;
    width:92px;
    height:19px;
    border:1px solid #66552e;
    background:linear-gradient(145deg,#66552e,#1b190e);
    transform:skewX(-38deg);
    transform-origin:left bottom;
}
.display-side-box{
    margin-right:8px;
}
.display-welcome-box{
    transform:scale(1.12) rotateY(-7deg);
}
.shop-display-art{
    min-width:170px;
    display:grid;
    place-items:center;
}
.shop-display-box{
    transform:scale(1.35) rotateY(-7deg);
}
.display-box{
    grid-template-columns:120px 1fr;
}


.recycle-mode-bar{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    border:1px solid #2c3027;
    background:#11140f;
    border-radius:13px;
    padding:13px 15px;
    margin-bottom:16px;
}
.recycle-mode-bar>div{
    display:flex;
    flex-direction:column;
    gap:3px;
}
.recycle-mode-bar strong{
    font-size:13px;
}
.recycle-mode-bar small{
    color:#7d8177;
    font-size:10px;
}
#multiRecycleToggle.active{
    border-color:#a58c4a;
    color:#edd58c;
}
.multi-recycle-mode .collection-card{
    cursor:pointer;
}
.multi-recycle-mode .collection-card .card-art{
    pointer-events:none;
}
.multi-recycle-mode .collection-card:after{
    content:"Sélectionner";
    position:absolute;
    inset:0;
    z-index:25;
    display:grid;
    place-items:center;
    border-radius:13px;
    background:rgba(7,9,6,.52);
    color:#ded6c3;
    font-weight:800;
    opacity:0;
    transition:.18s;
    pointer-events:none;
}
.multi-recycle-mode .collection-card:hover:after,
.multi-recycle-mode .collection-card.multi-recycle-selected:after{
    opacity:1;
}
.multi-recycle-mode .collection-card.multi-recycle-selected{
    box-shadow:
        0 0 0 2px #b2974e,
        0 18px 45px rgba(0,0,0,.55)!important;
    transform:translateY(-5px)!important;
}
.multi-recycle-mode .collection-card.multi-recycle-selected:after{
    content:"✓ Sélectionnée";
    background:rgba(28,30,18,.58);
    color:#ead58e;
}
.multi-recycle-dock{
    position:fixed;
    left:calc(var(--sidebar) + 24px);
    right:24px;
    bottom:24px;
    z-index:140;
    margin:auto;
    width:min(620px,calc(100% - 48px));
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:14px;
    padding:11px;
    border:1px solid #594b2d;
    border-radius:14px;
    background:rgba(13,15,11,.96);
    box-shadow:0 24px 70px #000;
    opacity:0;
    visibility:hidden;
    transform:translateY(20px);
    transition:.2s;
}
.multi-recycle-dock.visible{
    opacity:1;
    visibility:visible;
    transform:none;
}
.multi-recycle-dock>div{
    display:flex;
    flex-direction:column;
    text-align:center;
}
.multi-recycle-dock small{
    color:#777c72;
}
.collection-card-viewer{
    position:fixed;
    inset:0;
    z-index:260;
    display:grid;
    place-items:center;
    padding:30px;
}
.collection-card-viewer .modal-backdrop{
    position:absolute;
    inset:0;
    border:0;
    background:rgba(0,0,0,.9);
    backdrop-filter:blur(10px);
}
.collection-card-viewer-content{
    position:relative;
    z-index:1;
    width:min(820px,92vw);
    max-height:90vh;
    display:grid;
    grid-template-columns:minmax(260px,1fr) minmax(220px,.7fr);
    gap:28px;
    align-items:center;
    padding:25px;
    border:1px solid #3a3e31;
    border-radius:18px;
    background:#10120e;
    box-shadow:0 35px 100px #000;
}
.collection-card-viewer-content>img{
    width:100%;
    height:min(68vh,650px);
    object-fit:contain;
    cursor:zoom-out;
}
.collection-card-viewer-content>div h2{
    font:500 34px Georgia,serif;
    margin:6px 0;
}
.collection-card-viewer-content>div small{
    color:#8b8f84;
    text-transform:uppercase;
    letter-spacing:1px;
}
.collection-card-viewer-content>div span{
    color:#a6a99f;
}
.collection-single-recycle{
    position:absolute;
    right:24px;
    bottom:24px;
}


.modal-open{
    overflow:hidden;
}
.card-picker-overlay,
.market-compose-overlay{
    position:fixed;
    inset:0;
    z-index:250;
    display:grid;
    place-items:center;
    padding:24px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:.2s;
}
.card-picker-overlay.visible,
.market-compose-overlay.visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}
.modal-backdrop{
    position:absolute;
    inset:0;
    border:0;
    background:rgba(0,0,0,.86);
    backdrop-filter:blur(8px);
    cursor:pointer;
}
.card-picker-dialog,
.market-compose-dialog{
    position:relative;
    z-index:1;
    width:min(1180px,94vw);
    max-height:88vh;
    border:1px solid #34382d;
    border-radius:18px;
    background:#0e100c;
    box-shadow:0 35px 100px #000;
    padding:20px;
    overflow:hidden;
}
.card-picker-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
}
.card-picker-head small{
    color:#8c7947;
    font-size:8px;
    letter-spacing:1.6px;
}
.card-picker-head h2{
    font:500 28px Georgia,serif;
    margin:4px 0 0;
}
.card-picker-search{
    margin:14px 0;
}
.card-picker-empty{
    width:100%;
    height:42px;
    border:1px dashed #494c3e;
    border-radius:10px;
    background:#131610;
    color:#aaa698;
    cursor:pointer;
    margin-bottom:10px;
}
.card-picker-grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(130px,1fr));
    gap:10px;
    max-height:62vh;
    overflow:auto;
    padding:3px 5px 8px 3px;
}
.card-picker-card{
    position:relative;
    min-height:210px;
    border:1px solid #30342a;
    border-radius:12px;
    background:#141711;
    color:#e6e2d8;
    text-align:left;
    padding:8px;
    cursor:pointer;
    transition:.18s;
}
.card-picker-card:hover{
    transform:translateY(-4px);
    border-color:#75653d;
}
.card-picker-art{
    height:135px;
    display:grid;
    place-items:center;
    background:radial-gradient(circle,#33372c,#11130f 72%);
    border-radius:8px;
    margin-bottom:8px;
}
.card-picker-art img{
    width:92%;
    height:92%;
    object-fit:contain;
}
.card-picker-card>small{
    display:block;
    color:#73786e;
    font-size:8px;
    text-transform:uppercase;
}
.card-picker-card>strong{
    display:block;
    font:600 13px Georgia,serif;
    margin-top:4px;
}
.card-picker-card .rarity-badge{
    position:absolute;
    z-index:2;
    top:8px;
    left:8px;
}


.showcase-click-grid{
    grid-template-columns:repeat(5,minmax(150px,1fr));
}
.showcase-pick-slot{
    position:relative;
    min-height:270px;
    border:1px dashed #3a3e31;
    border-radius:14px;
    background:#10130e;
    color:#dcd6c8;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    padding:12px;
    cursor:pointer;
    overflow:hidden;
    transition:.18s;
}
.showcase-pick-slot:hover{
    border-color:#887442;
    transform:translateY(-3px);
}
.showcase-pick-slot.filled{
    border-style:solid;
}
.showcase-pick-slot img{
    width:100%;
    height:185px;
    object-fit:contain;
}
.showcase-pick-slot strong{
    font:600 14px Georgia,serif;
    text-align:center;
}
.showcase-pick-slot small{
    color:#777c72;
}
.showcase-plus{
    font-size:54px;
    color:#9d864a;
    font-weight:200;
    line-height:1;
}
.showcase-pick-slot .rarity-badge{
    position:absolute;
    top:10px;
    left:10px;
}


.friends-panel,
.friend-trade-composer,
.trade-offers-panel{
    border:1px solid #292d25;
    border-radius:16px;
    background:#11140f;
    padding:20px;
    margin-bottom:16px;
}
.friend-add-form{
    display:grid;
    grid-template-columns:1fr auto;
    gap:10px;
    margin-bottom:14px;
}
.friends-list{
    display:grid;
    gap:8px;
}
.friend-row{
    display:grid;
    grid-template-columns:auto 1fr auto auto;
    gap:11px;
    align-items:center;
    border:1px solid #292d25;
    border-radius:12px;
    padding:10px;
    background:#0e110d;
}
.friend-row>div{
    display:flex;
    flex-direction:column;
}
.friend-row small{
    color:#777c72;
}
.compact-empty{
    min-height:150px;
}
.trade-visual-composer,
.market-compose-visual{
    display:grid;
    grid-template-columns:minmax(180px,1fr) 70px minmax(180px,1fr);
    gap:18px;
    align-items:center;
    margin:20px 0;
}
.trade-card-slot{
    min-height:270px;
    border:1px dashed #484b3d;
    border-radius:14px;
    background:#0e110d;
    color:#dcd6c8;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:7px;
    padding:14px;
    cursor:pointer;
    overflow:hidden;
}
.trade-card-slot:hover{
    border-color:#8d7845;
}
.trade-card-slot>span{
    font-size:48px;
    color:#987f43;
}
.trade-card-slot img{
    width:100%;
    height:190px;
    object-fit:contain;
}
.trade-card-slot strong{
    font:600 15px Georgia,serif;
    text-align:center;
}
.trade-card-slot small{
    color:#787d72;
    text-align:center;
}
.trade-double-arrow{
    text-align:center;
    font-size:42px;
    color:#a68d4d;
}
.trade-send-button{
    display:flex;
    margin-left:auto;
}
.trade-offers-panel{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
}
.trade-offers-column{
    min-width:0;
}
.trade-offer-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    padding:11px;
    border:1px solid #2a2e26;
    border-radius:11px;
    background:#0e110d;
    margin-top:8px;
}
.trade-offer-row>div:first-child{
    display:flex;
    flex-direction:column;
    gap:2px;
}
.trade-offer-row small,
.trade-offer-row span,
.trade-empty-line{
    color:#787d73;
    font-size:10px;
}
.trade-offer-actions{
    display:flex;
    gap:7px;
}


.market-card-grid{
    align-items:start;
}
.market-add-tile{
    min-height:365px;
    border:1px dashed #484c3e;
    border-radius:14px;
    background:#10130e;
    color:#d8d2c3;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    cursor:pointer;
}
.market-add-tile:hover:not(:disabled){
    border-color:#927b45;
    background:#15180f;
}
.market-add-tile>span{
    font-size:60px;
    color:#a18948;
}
.market-add-tile strong{
    font:600 17px Georgia,serif;
}
.market-add-tile small{
    color:#777c72;
}
.market-add-tile:disabled{
    opacity:.4;
}
.market-card-cell{
    min-width:0;
}
.market-card-cell .collection-card{
    width:100%;
}
.market-card-seller{
    margin-top:8px;
    padding:9px 10px;
    border:1px solid #292d25;
    border-radius:10px;
    background:#10130e;
    display:flex;
    flex-direction:column;
    gap:4px;
}
.market-card-seller strong{
    font-size:12px;
}
.market-card-seller small{
    color:#8b8f84;
    min-height:28px;
}
.market-card-seller .btn{
    height:36px;
    margin-top:4px;
}
.market-compose-dialog{
    width:min(930px,94vw);
    overflow:auto;
}
.market-request-side{
    min-width:0;
}
.market-request-tabs{
    display:flex;
    gap:7px;
    margin-bottom:10px;
}
.market-request-tabs button{
    flex:1;
    height:37px;
    border:1px solid #34382d;
    border-radius:9px;
    background:#131610;
    color:#8b9085;
    cursor:pointer;
}
.market-request-tabs button.active{
    border-color:#8d7845;
    color:#ead58f;
    background:#1c1c13;
}
.market-points-request{
    min-height:270px;
    border:1px solid #3b3f33;
    border-radius:14px;
    background:#0e110d;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:9px;
}
.market-points-request input{
    width:180px;
    text-align:center;
    font-size:24px;
}
.market-points-request small{
    color:#7c8076;
}
.market-create-submit{
    display:flex;
    margin-left:auto;
}


.server-gifts-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(300px,1fr));
    gap:14px;
}
.server-gift-card{
    position:relative;
    min-height:270px;
    border:1px solid #343328;
    border-radius:16px;
    background:
        radial-gradient(
            circle at 15% 20%,
            rgba(201,170,91,.08),
            transparent 35%
        ),
        #10130e;
    padding:24px;
    display:grid;
    grid-template-columns:80px 1fr;
    gap:18px;
    align-items:center;
}
.server-gift-symbol{
    width:70px;
    height:70px;
    border:1px solid #6a5b36;
    border-radius:50%;
    display:grid;
    place-items:center;
    color:#d1b460;
    font-size:30px;
}
.server-gift-card h2{
    font:500 26px Georgia,serif;
    margin:5px 0;
}
.server-gift-card p{
    color:#7f8479;
}
.server-gift-card>.btn,
.gift-claimed-card{
    grid-column:1/-1;
}
.gift-claimed-card{
    display:grid;
    grid-template-columns:90px 1fr;
    gap:14px;
    align-items:center;
    border-top:1px solid #2d3028;
    padding-top:14px;
}
.gift-claimed-card img{
    width:90px;
    height:90px;
    object-fit:contain;
}
.gift-claimed-card>div{
    display:flex;
    flex-direction:column;
}
.gift-claimed-card small{
    color:#8f7844;
}
.gift-claimed-card span{
    color:#777c72;
    font-size:10px;
}


@media(max-width:1100px){
    .card-picker-grid{
        grid-template-columns:repeat(4,minmax(125px,1fr));
    }
    .showcase-click-grid{
        grid-template-columns:repeat(3,1fr);
    }
    .trade-offers-panel{
        grid-template-columns:1fr;
    }
}

@media(max-width:760px){
    .display-box{
        grid-template-columns:1fr;
    }
    .display-product-box{
        margin-left:auto;
        margin-right:auto;
    }
    .recycle-mode-bar{
        flex-direction:column;
        align-items:stretch;
    }
    .multi-recycle-dock{
        left:10px;
        right:10px;
        bottom:75px;
        width:auto;
        grid-template-columns:auto 1fr;
    }
    .multi-recycle-dock .btn-primary{
        grid-column:1/-1;
    }
    .collection-card-viewer-content{
        grid-template-columns:1fr;
        overflow:auto;
    }
    .collection-card-viewer-content>img{
        height:48vh;
    }
    .collection-single-recycle{
        position:static;
        grid-column:1/-1;
    }
    .card-picker-grid{
        grid-template-columns:repeat(2,minmax(120px,1fr));
    }
    .card-picker-dialog{
        padding:13px;
    }
    .showcase-click-grid{
        grid-template-columns:repeat(2,1fr);
    }
    .showcase-pick-slot{
        min-height:220px;
    }
    .showcase-pick-slot img{
        height:145px;
    }
    .friend-add-form{
        grid-template-columns:1fr;
    }
    .friend-row{
        grid-template-columns:auto 1fr;
    }
    .friend-row .btn,
    .friend-row .icon-btn{
        grid-row:2;
    }
    .trade-visual-composer,
    .market-compose-visual{
        grid-template-columns:1fr;
    }
    .trade-double-arrow{
        transform:rotate(90deg);
    }
    .server-gifts-grid{
        grid-template-columns:1fr;
    }
}



.market-points-request[hidden],
.trade-card-slot[hidden]{
    display:none !important;
}
.server-gift-focus{
    border:1px solid #343328;
    border-radius:18px;
    background:radial-gradient(circle at 50% 0, rgba(196,168,88,.10), transparent 32%), #10130e;
    padding:28px 24px 32px;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:20px;
}
.server-gift-focus-head{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:6px;
}
.server-gift-focus-head small{
    color:#8f7844;
    letter-spacing:1.6px;
    font-size:9px;
}
.server-gift-focus-head h2{
    margin:0;
    font:500 30px Georgia,serif;
}
.server-gift-focus-head p{
    margin:0;
    color:#84897f;
}
.server-gift-timer{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:36px;
    padding:0 16px;
    border:1px solid #4d4227;
    border-radius:999px;
    background:#13160f;
    color:#ead58e;
    font-size:12px;
}
.server-gift-center-card{
    width:min(360px, 100%);
}
.server-gift-center-card .collection-card{
    margin:0 auto;
}
.server-gift-claim-row{
    display:flex;
    justify-content:center;
    width:100%;
}
.server-gift-claimed-box{
    min-width:min(420px, 100%);
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:5px;
    padding:14px 18px;
    border:1px solid #403723;
    border-radius:14px;
    background:#11140f;
    text-align:center;
}
.server-gift-claimed-box small{
    color:#7f847a;
}



.market-compose-visual{
    grid-template-columns:minmax(280px,1fr) 72px minmax(280px,1fr);
    align-items:start;
}
.market-offered-slot,
.market-request-side,
.market-request-side .trade-card-slot,
.market-request-side .market-points-request{
    width:100%;
}
.market-request-side{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:12px;
}
.market-request-tabs{
    margin:0;
}
.market-offered-slot,
#marketWantedSlot,
#marketPointsRequest{
    min-height:300px;
}
#marketPointsRequest{
    padding:18px;
}
#marketPointsRequest span{
    font:600 15px Georgia,serif;
    color:#e9e2d4;
}
#marketPointsRequest input{
    width:180px;
}

.shop-item-card{
    grid-template-rows:270px auto;
    align-items:start;
}
.shop-item-card .mega-art-stack,
.shop-item-card .shop-display-art{
    width:100%;
    height:270px;
    display:grid;
    place-items:center;
    align-self:start;
}
.shop-item-card .mega-art-stack{
    transform:none;
}
.shop-item-card .shop-display-box{
    transform:scale(1.22) rotateY(-7deg);
    transform-origin:center center;
}
.shop-item-card .mega-shop-info{
    align-self:start;
}

.opening-overlay{
    padding:30px 36px;
}
.reveal-zone{
    width:min(1420px, calc(100vw - 72px));
    margin:0 auto;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}
.reveal-cards{
    width:100%;
    justify-content:center;
    margin:0 auto;
}
.opening-overlay.mega-opening .reveal-zone{
    width:min(1180px, calc(100vw - 72px));
}
.opening-overlay.mega-opening .reveal-cards{
    width:min(1090px, 100%);
    max-width:1090px;
    display:grid;
    grid-template-columns:repeat(5, 205px);
    justify-content:center;
    gap:16px;
}
.opening-overlay.mega-opening .reveal-card{
    width:205px;
    min-width:205px;
    height:310px;
}
.opening-overlay.mega-opening .reveal-card:nth-child(n+6){
    margin-top:0;
}

@media(max-width:1200px){
    .market-compose-visual{
        grid-template-columns:1fr;
    }
    .trade-double-arrow{
        transform:rotate(90deg);
    }
    .opening-overlay.mega-opening .reveal-zone{
        width:min(980px, calc(100vw - 50px));
    }
    .opening-overlay.mega-opening .reveal-cards{
        width:min(920px, 100%);
        max-width:920px;
        grid-template-columns:repeat(5, 170px);
        gap:12px;
    }
    .opening-overlay.mega-opening .reveal-card{
        width:170px;
        min-width:170px;
        height:260px;
    }
    .opening-overlay.mega-opening .reveal-art{
        height:168px;
    }
}

@media(max-width:760px){
    .shop-item-card{
        grid-template-rows:auto auto;
    }
    .shop-item-card .mega-art-stack,
    .shop-item-card .shop-display-art{
        height:230px;
    }
    .opening-overlay{
        padding:16px;
    }
    .reveal-zone,
    .opening-overlay.mega-opening .reveal-zone{
        width:100%;
    }
    .opening-overlay.mega-opening .reveal-cards{
        width:94vw;
        max-width:none;
        grid-template-columns:repeat(2, minmax(130px, 1fr));
        gap:8px;
    }
    .opening-overlay.mega-opening .reveal-card{
        width:100%;
        min-width:0;
        height:210px;
    }
    .opening-overlay.mega-opening .reveal-art{
        height:132px;
    }
}



.nav-item{
    align-items:center;
}
.nav-icon{
    flex:0 0 21px;
    align-self:center;
}
.nav-item > span:last-child{
    line-height:1.15;
}

.market-compose-visual{
    grid-template-columns:minmax(300px,1fr) 72px minmax(300px,1fr);
    align-items:start;
}
.market-compose-visual > .trade-double-arrow{
    display:grid;
    place-items:center;
    align-self:center;
    margin-top:34px;
}
.market-request-side{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:12px;
}
.market-request-tabs{
    width:100%;
    margin:0;
}
.market-request-tabs button{
    height:42px;
}
.market-offered-slot,
#marketWantedSlot,
#marketPointsRequest{
    width:100%;
    min-height:300px;
}
#marketPointsRequest{
    padding:18px;
}

.card-picker-head [data-picker-close]{
    width:42px;
    height:42px;
    border:1px solid #66695d;
    border-radius:11px;
    background:#464640;
    color:#ffffff;
    font-size:28px;
    line-height:1;
    font-weight:300;
    box-shadow:0 0 0 1px rgba(255,255,255,.08) inset;
}
.card-picker-head [data-picker-close]:hover{
    background:#55554d;
    color:#ffffff;
}
.card-picker-toolbar{
    display:grid;
    grid-template-columns:minmax(0,1fr) 220px;
    gap:12px;
    margin:0 0 12px;
}
.card-picker-filter{
    display:flex;
    flex-direction:column;
    gap:6px;
}
.card-picker-filter span{
    color:#8f875f;
    font-size:9px;
    font-weight:900;
    letter-spacing:1.2px;
    text-transform:uppercase;
}
.card-picker-grid{
    max-height:56vh;
}

@media(min-width:761px){
    .opening-overlay{
        left:var(--sidebar);
        right:0;
        width:calc(100vw - var(--sidebar));
        padding:24px 28px;
    }
    .reveal-zone{
        width:min(1280px, calc(100vw - var(--sidebar) - 56px));
        min-height:calc(100vh - 48px);
        margin:0 auto;
        justify-content:center;
    }
    .opening-overlay:not(.mega-opening) .reveal-cards{
        width:min(1093px, 100%);
        display:grid;
        grid-template-columns:repeat(5, 205px);
        justify-content:center;
        gap:17px;
        margin:0 auto;
    }
    .opening-overlay:not(.mega-opening) .reveal-card{
        width:205px;
        min-width:205px;
        margin:0;
    }
    .opening-overlay.mega-opening .reveal-zone{
        width:min(1180px, calc(100vw - var(--sidebar) - 56px));
    }
}

@media(max-width:900px){
    .card-picker-toolbar{
        grid-template-columns:1fr;
    }
}

@media(max-width:1200px){
    .market-compose-visual > .trade-double-arrow{
        margin-top:0;
        transform:rotate(90deg);
    }
}

@media(max-width:760px){
    .card-picker-head [data-picker-close]{
        width:38px;
        height:38px;
    }
    .card-picker-toolbar{
        grid-template-columns:1fr;
    }
    .opening-overlay{
        left:0;
        width:100vw;
    }
}



.market-offered-slot{
    margin-top:54px;
}
.market-compose-visual > .trade-double-arrow{
    margin-top:54px;
}

@media(max-width:1200px){
    .market-offered-slot{
        margin-top:0;
    }
    .market-compose-visual > .trade-double-arrow{
        margin-top:0;
    }
}



.market-card-trigger{
    appearance:none;
    border:0;
    background:transparent;
    padding:0;
    margin:0;
    text-align:left;
    cursor:pointer;
}
.market-card-trigger .collection-card{
    width:100%;
}
.market-card-trigger:hover .collection-card{
    transform:translateY(-4px);
    border-color:#8f7a47;
    box-shadow:0 10px 30px rgba(0,0,0,.28), 0 0 0 1px rgba(214,184,94,.14);
}
.market-detail-overlay{
    position:fixed;
    inset:0;
    background:rgba(0,0,0,.66);
    display:none;
    align-items:center;
    justify-content:center;
    z-index:70;
}
.market-detail-overlay.is-open{
    display:flex;
}
.market-detail-dialog{
    position:relative;
    width:min(920px, calc(100vw - 40px));
    max-height:calc(100vh - 40px);
    overflow:auto;
    padding:22px;
    border:1px solid #383424;
    border-radius:18px;
    background:#0f120d;
    box-shadow:0 30px 80px rgba(0,0,0,.45);
}
.market-detail-layout{
    display:grid;
    grid-template-columns:minmax(220px, 320px) 72px minmax(220px, 1fr);
    gap:18px;
    align-items:center;
    margin-top:18px;
}
.market-detail-card .collection-card{
    width:100%;
    margin:0;
}
.market-detail-demand{
    min-height:320px;
    display:flex;
    align-items:center;
}
.market-demand-box{
    width:100%;
    min-height:320px;
    border:1px dashed #4a4b3c;
    border-radius:16px;
    background:#10130e;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:8px;
    padding:24px;
    text-align:center;
}
.market-demand-box small{
    color:#8f875f;
    font-size:10px;
    letter-spacing:1.4px;
    font-weight:900;
}
.market-demand-box strong{
    font:600 30px Georgia,serif;
    color:#f0e7d1;
}
.market-demand-box span{
    color:#a7ab9f;
    font-size:15px;
    line-height:1.35;
}
.market-demand-box.is-points strong{
    font-size:56px;
    color:#d8bb63;
    line-height:1;
}
.market-detail-actions{
    display:flex;
    justify-content:flex-end;
    margin-top:18px;
}
@media(max-width:900px){
    .market-detail-layout{
        grid-template-columns:1fr;
    }
    .market-detail-layout > .trade-double-arrow{
        transform:rotate(90deg);
        margin:6px 0;
    }
    .market-detail-demand,
    .market-demand-box{
        min-height:220px;
    }
}


.login-panel-wide{
    width:min(780px,calc(100vw - 36px));
    padding-bottom:30px;
}
.login-notices{
    margin-top:24px;
    padding-top:20px;
    border-top:1px solid #2c2f27;
    display:grid;
    gap:10px;
    text-align:left;
}
.login-notices p{
    margin:0;
    color:#85897f;
    font-size:10px;
    line-height:1.55;
}
.login-notices a{
    color:#dcc27a;
    text-decoration:underline;
    text-underline-offset:2px;
}
.login-notices a:hover{
    color:#f0dda0;
}
.login-notices strong{
    color:#bbb7aa;
}
.login-notices .login-rights{
    color:#6f736b;
}
@media(max-width:760px){
    .login-panel-wide{
        width:min(94vw,780px);
        max-height:92vh;
        overflow:auto;
        padding:30px 20px 24px;
    }
    .login-notices p{
        font-size:9px;
    }
}

.login-panel-wide{
    width:min(960px,calc(100vw - 48px));
    padding:46px 54px 38px;
}
.login-panel-wide .login-lead{
    max-width:620px;
    font-size:16px;
    line-height:1.7;
}
.login-notices{
    margin-top:28px;
    padding-top:24px;
    gap:16px;
}
.login-notices p{
    font-size:13px;
    line-height:1.72;
    color:#969a90;
}
.login-notices a{
    font-weight:700;
}
.login-notices strong{
    color:#d2cdc0;
}
.login-notices .login-rights{
    color:#81867c;
}

@media(max-width:760px){
    .login-panel-wide{
        width:min(95vw,960px);
        max-height:94vh;
        overflow:auto;
        padding:30px 22px 26px;
    }
    .login-panel-wide .login-lead{
        font-size:14px;
        line-height:1.65;
    }
    .login-notices{
        gap:14px;
    }
    .login-notices p{
        font-size:12px;
        line-height:1.65;
    }
}


.welcome-reward-item .display-welcome-box{
    margin:4px auto 34px;
}
.welcome-reward-item:first-child{
    padding-top:24px;
}
.card-picker-toolbar{
    grid-template-columns:minmax(0,1fr) minmax(180px,220px) minmax(180px,220px);
}
.market-detail-dialog{
    width:min(860px,calc(100vw - 40px));
}
.market-detail-layout{
    grid-template-columns:minmax(0,340px) 64px minmax(0,340px);
    justify-content:center;
    align-items:center;
    gap:18px;
}
.market-detail-card,
.market-detail-demand{
    width:340px;
    max-width:100%;
    min-height:0;
}
.market-detail-demand{
    display:block;
}
.market-detail-layout .collection-card{
    width:100%;
    margin:0;
}
.market-detail-layout > .trade-double-arrow{
    display:grid;
    place-items:center;
    align-self:center;
    margin:0;
}
.market-demand-box{
    width:100%;
    min-height:0;
}
.server-gift-timer{
    min-width:250px;
    font-variant-numeric:tabular-nums;
}
@media(max-width:900px){
    .card-picker-toolbar{
        grid-template-columns:1fr;
    }
    .market-detail-layout{
        grid-template-columns:1fr;
    }
    .market-detail-card,
    .market-detail-demand{
        width:min(340px,100%);
        margin:0 auto;
    }
}

.shop-items-grid-two{
    grid-template-columns:repeat(2,minmax(0,1fr));
}

@media(min-width:1501px){
    .opening-overlay .reveal-zone,
    .opening-overlay.mega-opening .reveal-zone{
        width:min(1600px,calc(100vw - var(--sidebar) - 56px));
    }
    .opening-overlay:not(.mega-opening) .reveal-cards,
    .opening-overlay.mega-opening .reveal-cards{
        width:max-content;
        max-width:none;
        grid-template-columns:repeat(7,190px);
        gap:14px;
    }
    .opening-overlay:not(.mega-opening) .reveal-card,
    .opening-overlay.mega-opening .reveal-card{
        width:190px;
        min-width:190px;
        height:292px;
    }
    .opening-overlay:not(.mega-opening) .reveal-art,
    .opening-overlay.mega-opening .reveal-art{
        height:190px;
    }
}

@media(min-width:1201px) and (max-width:1500px){
    .opening-overlay .reveal-zone,
    .opening-overlay.mega-opening .reveal-zone{
        width:calc(100vw - var(--sidebar) - 48px);
    }
    .opening-overlay:not(.mega-opening) .reveal-cards,
    .opening-overlay.mega-opening .reveal-cards{
        width:max-content;
        max-width:none;
        grid-template-columns:repeat(7,150px);
        gap:11px;
    }
    .opening-overlay:not(.mega-opening) .reveal-card,
    .opening-overlay.mega-opening .reveal-card{
        width:150px;
        min-width:150px;
        height:238px;
    }
    .opening-overlay:not(.mega-opening) .reveal-art,
    .opening-overlay.mega-opening .reveal-art{
        height:150px;
    }
}

@media(min-width:761px) and (max-width:1200px){
    .opening-overlay:not(.mega-opening) .reveal-cards,
    .opening-overlay.mega-opening .reveal-cards{
        width:max-content;
        max-width:100%;
        grid-template-columns:repeat(4,170px);
        gap:12px;
    }
    .opening-overlay:not(.mega-opening) .reveal-card,
    .opening-overlay.mega-opening .reveal-card{
        width:170px;
        min-width:170px;
        height:260px;
    }
}

@media(max-width:760px){
    .shop-items-grid-two{
        grid-template-columns:1fr;
    }
    .opening-overlay:not(.mega-opening) .reveal-cards,
    .opening-overlay.mega-opening .reveal-cards{
        grid-template-columns:repeat(2,minmax(130px,1fr));
        max-height:72vh;
        overflow-y:auto;
        align-items:start;
    }
}
.catalog-server-toolbar{grid-template-columns:minmax(260px,1fr) 190px 210px 180px auto}
.catalog-result-count{margin:-6px 0 14px;color:#7f8479;font-size:11px;text-align:right}
.catalog-pagination{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;margin:26px 0 10px}
.catalog-pagination>a:first-child{justify-self:start}.catalog-pagination>a:last-child{justify-self:end}.catalog-pagination>span{color:#8c9187;font-size:11px}
@media(max-width:980px){.catalog-server-toolbar{grid-template-columns:1fr 1fr}.catalog-server-toolbar .search-field{grid-column:1/-1}}
@media(max-width:600px){.catalog-server-toolbar{grid-template-columns:1fr}.catalog-server-toolbar .search-field{grid-column:auto}}
.nav-notification-badge{margin-left:auto;min-width:20px;height:20px;padding:0 5px;border-radius:10px;display:inline-grid;place-items:center;background:#a88b45;color:#0e100c;font-size:9px;font-weight:900}
.notification-panel{border:1px solid #2b2e26;border-radius:15px;background:#10130e;padding:18px}
.notification-list{display:grid;gap:8px}
.notification-row{display:grid;grid-template-columns:14px 1fr;gap:11px;padding:13px;border:1px solid #292d24;border-radius:11px;background:#0d100c;color:inherit;text-decoration:none}
.notification-row.unread{border-color:#665a38;background:#15140e}
.notification-dot{width:8px;height:8px;border-radius:50%;background:#4e5149;margin-top:5px}.notification-row.unread .notification-dot{background:#c3a552}
.notification-row strong{font:600 15px Georgia,serif}.notification-row p{margin:4px 0;color:#9a9f94;font-size:12px}.notification-row small{color:#666c63;font-size:9px}
.account-danger-panel{margin-top:18px;padding:18px;border:1px solid #58322d;border-radius:14px;background:#160f0d;display:flex;align-items:center;justify-content:space-between;gap:18px}.account-danger-panel small{color:#b06c61;font-size:9px;letter-spacing:1.3px;font-weight:900}.account-danger-panel h2{margin:4px 0 6px;font:500 22px Georgia,serif}.account-danger-panel p{margin:0;max-width:760px;color:#9b827d;font-size:11px;line-height:1.5}.btn-danger{background:#6c3028;color:#fff;border:1px solid #8d473c}.btn-danger:hover{background:#7d382e}@media(max-width:700px){.account-danger-panel{align-items:stretch;flex-direction:column}}
.login-delete-notice{padding:10px 13px;margin:0 0 14px;border:1px solid #45563a;border-radius:10px;background:#121b0f;color:#afc99b;font-size:12px}


.market-detail-dialog{
    width:min(940px,calc(100vw - 32px));
    max-width:100%;
    padding:24px 26px 22px;
    overflow-x:hidden;
}
.market-detail-dialog .section-heading{
    align-items:center;
    margin-bottom:24px;
}
.market-detail-layout{
    width:100%;
    min-width:0;
    grid-template-columns:minmax(0,1fr) 52px minmax(0,1fr);
    gap:16px;
    margin:0;
}
.market-detail-card,
.market-detail-demand{
    width:100%;
    max-width:330px;
    min-width:0;
    justify-self:center;
}
.market-detail-layout .collection-card{
    width:100%;
    max-width:330px;
    overflow:hidden;
}
.market-detail-layout .card-art-wrap{
    height:220px;
}
.market-detail-layout .card-info h3{
    min-height:39px;
}
.market-detail-layout > .trade-double-arrow{
    width:52px;
    min-width:0;
    font-size:38px;
}
.market-detail-actions{
    margin-top:20px;
}

.rarity-ur .front,
.collection-card.rarity-ur{
    isolation:isolate;
    border-color:rgba(221,133,67,.82);
    box-shadow:0 0 0 1px rgba(230,145,77,.10) inset,0 0 24px rgba(211,111,49,.16),0 14px 38px rgba(0,0,0,.34);
    animation:urCardPulse 3.8s ease-in-out infinite;
}
.rarity-ur .front:after,
.collection-card.rarity-ur:after{
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;
    pointer-events:none;
    z-index:3;
    opacity:.42;
    background:
        radial-gradient(circle at 18% 88%,rgba(255,119,40,.20),transparent 28%),
        radial-gradient(circle at 82% 12%,rgba(255,189,105,.14),transparent 25%),
        linear-gradient(118deg,transparent 22%,rgba(255,161,86,.05) 38%,rgba(255,215,151,.17) 49%,rgba(255,142,63,.05) 61%,transparent 78%);
    background-size:100% 100%,100% 100%,220% 100%;
    background-position:center,center,-130% 0;
    animation:urCardFlow 4.6s ease-in-out infinite;
}
.rarity-l .front,
.collection-card.rarity-l{
    isolation:isolate;
    border-color:rgba(242,208,103,.92);
    box-shadow:0 0 0 1px rgba(255,231,145,.16) inset,0 0 32px rgba(228,194,93,.22),0 18px 44px rgba(0,0,0,.38);
    animation:legendCardPulse 4.8s ease-in-out infinite;
}
.rarity-l .front:after,
.collection-card.rarity-l:after{
    content:"";
    position:absolute;
    inset:0;
    border-radius:inherit;
    pointer-events:none;
    z-index:3;
    opacity:.52;
    transform:none;
    background:
        radial-gradient(circle at 50% -12%,rgba(255,239,170,.25),transparent 38%),
        radial-gradient(circle at 10% 20%,rgba(255,223,111,.10),transparent 20%),
        radial-gradient(circle at 90% 78%,rgba(255,247,199,.11),transparent 24%),
        linear-gradient(110deg,transparent 20%,rgba(255,245,200,.04) 37%,rgba(255,244,184,.23) 50%,rgba(255,230,130,.04) 63%,transparent 80%);
    background-size:100% 100%,100% 100%,100% 100%,240% 100%;
    background-position:center,center,center,-145% 0;
    animation:legendCardFlow 5.8s ease-in-out infinite;
}
@keyframes urCardPulse{
    0%,100%{box-shadow:0 0 0 1px rgba(230,145,77,.10) inset,0 0 20px rgba(211,111,49,.12),0 14px 38px rgba(0,0,0,.34)}
    50%{box-shadow:0 0 0 1px rgba(255,177,102,.18) inset,0 0 34px rgba(222,123,54,.25),0 16px 42px rgba(0,0,0,.38)}
}
@keyframes urCardFlow{
    0%,22%{background-position:center,center,-130% 0;opacity:.30}
    55%{opacity:.52}
    78%,100%{background-position:center,center,150% 0;opacity:.30}
}
@keyframes legendCardPulse{
    0%,100%{box-shadow:0 0 0 1px rgba(255,231,145,.14) inset,0 0 26px rgba(228,194,93,.17),0 18px 44px rgba(0,0,0,.38)}
    50%{box-shadow:0 0 0 1px rgba(255,239,178,.24) inset,0 0 46px rgba(240,209,111,.30),0 20px 50px rgba(0,0,0,.42)}
}
@keyframes legendCardFlow{
    0%,18%{background-position:center,center,center,-145% 0;opacity:.38}
    52%{opacity:.62}
    82%,100%{background-position:center,center,center,155% 0;opacity:.38}
}
.login-delete-pending{
    display:flex;
    flex-direction:column;
    gap:5px;
    border-color:#67572d;
    background:#1a170d;
    color:#d9c989;
}
.login-delete-pending strong{color:#f0dc91}
.login-delete-pending b{font-variant-numeric:tabular-nums;color:#f3e4ac}

@media(max-width:820px){
    .market-detail-dialog{
        width:min(560px,calc(100vw - 20px));
        padding:18px;
    }
    .market-detail-layout{
        grid-template-columns:1fr;
        gap:12px;
    }
    .market-detail-card,
    .market-detail-demand,
    .market-detail-layout .collection-card{
        width:min(330px,100%);
        max-width:330px;
    }
    .market-detail-layout > .trade-double-arrow{
        width:auto;
        transform:rotate(90deg);
        margin:2px auto;
    }
}
@media(prefers-reduced-motion:reduce){
    .rarity-ur .front,
    .collection-card.rarity-ur,
    .rarity-l .front,
    .collection-card.rarity-l,
    .rarity-ur .front:after,
    .collection-card.rarity-ur:after,
    .rarity-l .front:after,
    .collection-card.rarity-l:after{
        animation:none!important;
    }
}

.gb-dialog-overlay{
    position:fixed;
    inset:0;
    z-index:520;
    display:grid;
    place-items:center;
    padding:24px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .18s ease,visibility .18s ease;
}
.gb-dialog-overlay.visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}
.gb-dialog-backdrop{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
    padding:0;
    background:rgba(0,0,0,.76);
    backdrop-filter:blur(9px);
}
.gb-dialog{
    position:relative;
    z-index:1;
    width:min(500px,calc(100vw - 36px));
    padding:24px;
    border:1px solid #4b432b;
    border-radius:17px;
    background:linear-gradient(145deg,#151811,#0e110d 70%);
    box-shadow:0 30px 90px rgba(0,0,0,.62),0 0 0 1px rgba(211,184,104,.04) inset;
}
.gb-dialog-emblem{
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    margin-bottom:14px;
    border:1px solid #665733;
    border-radius:50%;
    color:#d5b963;
    font-size:18px;
}
.gb-dialog-copy small{
    color:#8e8051;
    font-size:9px;
    font-weight:900;
    letter-spacing:1.5px;
}
.gb-dialog-copy h2{
    margin:5px 0 9px;
    color:#eee7d8;
    font:600 25px Georgia,serif;
}
.gb-dialog-copy p{
    margin:0;
    color:#9fa398;
    font-size:13px;
    line-height:1.65;
    white-space:pre-line;
}
.gb-dialog-input-wrap{
    display:flex;
    flex-direction:column;
    gap:7px;
    margin-top:17px;
}
.gb-dialog-input-wrap[hidden]{display:none!important}
.gb-dialog-input-wrap span{
    color:#8f875f;
    font-size:9px;
    font-weight:900;
    letter-spacing:1.2px;
    text-transform:uppercase;
}
.gb-dialog-input-wrap input{
    width:100%;
    min-height:44px;
}
.gb-dialog-actions{
    display:flex;
    justify-content:flex-end;
    gap:9px;
    margin-top:20px;
}
.gb-dialog.is-danger{
    border-color:#70413a;
}
.gb-dialog.is-danger .gb-dialog-emblem{
    border-color:#70413a;
    color:#d78373;
}
.gb-dialog.is-danger .gb-dialog-actions .btn-primary{
    background:#7b392f;
    border-color:#955044;
    color:#fff;
}
.gb-dialog-open{overflow:hidden}

.open-all-boosters-btn{
    min-height:44px;
    white-space:nowrap;
}
.opening-auto-controls{
    display:none;
    align-items:center;
    justify-content:center;
    gap:10px;
    min-height:44px;
    margin:4px auto 12px;
    position:relative;
    z-index:9;
}
.opening-auto-controls.show{display:flex}
.opening-auto-controls .btn{
    min-width:190px;
    backdrop-filter:blur(8px);
}
.opening-auto-controls .auto-stop-btn{
    border-color:#684137;
    color:#d9a397;
}

.card-image-viewer-content{
    width:min(400px,calc(100vw - 36px));
    max-width:none;
    max-height:calc(100vh - 40px);
    display:block;
    position:relative;
    pointer-events:auto;
}
.card-image-viewer-card{
    width:100%;
    display:flex;
    justify-content:center;
}
.card-image-viewer-card .collection-card,
.collection-viewer-card-host .collection-card{
    width:min(360px,100%);
    height:auto;
    min-height:470px;
    margin:0 auto;
    transform:none!important;
    z-index:auto!important;
    overflow:hidden;
    cursor:default;
}
.card-image-viewer-card .card-art-wrap,
.collection-viewer-card-host .card-art-wrap{
    height:310px;
    flex:0 0 310px;
}
.card-image-viewer-card .card-info,
.collection-viewer-card-host .card-info{
    min-height:150px;
}
.card-viewer-close{
    position:absolute;
    top:-12px;
    right:-12px;
    z-index:20;
    width:42px;
    height:42px;
    border:1px solid #8b7a4d;
    background:#24271f;
    color:#fff;
    font-size:27px;
    line-height:1;
    opacity:1;
    box-shadow:0 8px 24px rgba(0,0,0,.45);
}
.collection-card-viewer-content.collection-full-card-viewer{
    position:relative;
    width:min(430px,calc(100vw - 36px));
    max-width:none;
    display:flex;
    grid-template-columns:none;
    flex-direction:column;
    gap:14px;
    padding:18px;
    overflow:visible;
}
.collection-viewer-card-host{
    width:100%;
}
.collection-viewer-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    width:min(360px,100%);
    margin:0 auto;
}
.collection-viewer-actions>span{
    color:#999d92;
    font-size:11px;
    white-space:nowrap;
}
#cardGrid .collection-card{
    cursor:pointer;
}

.market-detail-dialog{
    width:min(850px,calc(100vw - 32px));
    max-width:850px;
    overflow:hidden;
    padding:22px 24px 20px;
}
.market-detail-dialog .section-heading{
    margin-bottom:18px;
    gap:18px;
}
.market-detail-dialog .section-heading>div{
    min-width:0;
}
.market-detail-dialog .section-heading h2{
    max-width:720px;
    margin-top:4px;
    font-size:clamp(17px,2vw,23px);
    line-height:1.25;
    overflow-wrap:anywhere;
}
.market-detail-dialog .section-heading .icon-btn{
    flex:0 0 42px;
    width:42px;
    height:42px;
    display:grid;
    place-items:center;
    border:1px solid #8d7a49;
    border-radius:11px;
    background:#292c23;
    color:#fff;
    font-size:27px;
    line-height:1;
    opacity:1;
    box-shadow:0 5px 18px rgba(0,0,0,.35);
}
.market-detail-dialog .section-heading .icon-btn:hover{
    background:#373a2e;
    color:#fff;
    border-color:#b09857;
}
.market-detail-layout{
    width:100%;
    display:grid;
    grid-template-columns:330px 54px 330px;
    justify-content:center;
    align-items:center;
    gap:14px;
    overflow:visible;
}
.market-detail-card,
.market-detail-demand{
    width:330px;
    height:410px;
    max-width:none;
    min-width:0;
    display:flex;
    align-items:stretch;
    justify-content:stretch;
}
.market-detail-layout .collection-card,
.market-detail-layout .market-detail-rendered-card{
    box-sizing:border-box;
    width:330px!important;
    min-width:330px!important;
    max-width:330px!important;
    height:410px!important;
    min-height:410px!important;
    max-height:410px!important;
    margin:0!important;
    display:flex;
    flex-direction:column;
    overflow:hidden;
    transform:none!important;
}
.market-detail-layout .card-art-wrap{
    box-sizing:border-box;
    height:265px!important;
    min-height:265px!important;
    flex:0 0 265px!important;
}
.market-detail-layout .card-info{
    min-height:0;
    flex:1 1 auto;
    display:flex;
    flex-direction:column;
}
.market-detail-layout .card-info h3{
    min-height:0;
    margin-bottom:auto;
}
.market-detail-layout > .trade-double-arrow{
    width:54px;
    margin:0;
    align-self:center;
    justify-self:center;
    font-size:38px;
}
.market-demand-box{
    box-sizing:border-box;
    width:330px;
    height:410px;
    min-height:410px!important;
    max-height:410px;
    margin:0;
}
.market-detail-actions{
    margin-top:16px;
}

@media(max-width:820px){
    .market-detail-dialog{
        width:min(430px,calc(100vw - 20px));
        max-width:430px;
        overflow-y:auto;
    }
    .market-detail-layout{
        grid-template-columns:1fr;
        gap:10px;
    }
    .market-detail-card,
    .market-detail-demand,
    .market-detail-layout .collection-card,
    .market-detail-layout .market-detail-rendered-card,
    .market-demand-box{
        width:min(330px,100%)!important;
        min-width:0!important;
        max-width:330px!important;
        margin:0 auto!important;
    }
    .market-detail-layout > .trade-double-arrow{
        width:auto;
        transform:rotate(90deg);
    }
    .collection-viewer-actions{
        flex-direction:column;
        align-items:stretch;
    }
    .collection-viewer-actions>span{text-align:center}
    .opening-auto-controls{
        flex-direction:column;
    }
    .opening-auto-controls .btn{
        width:min(320px,100%);
    }
}

/* Patch 2.1.3 — ouverture auto + échanges équivalents du marché */
@media(min-width:761px){
    .opening-auto-controls{
        position:absolute;
        left:50%;
        top:-78px;
        transform:translateX(-50%);
        margin:0;
        z-index:20;
    }
}

.market-equivalence-note{
    display:flex;
    flex-direction:column;
    gap:4px;
    margin:-4px 0 14px;
    padding:10px 12px;
    border:1px solid #343326;
    border-radius:11px;
    background:#11140f;
}
.market-equivalence-note strong{
    color:#d8c27b;
    font-size:11px;
}
.market-equivalence-note span{
    color:#858a80;
    font-size:10px;
    line-height:1.45;
}
.market-offer-side{
    min-width:0;
    padding-top:54px;
}
.market-offer-slots{
    width:100%;
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
}
.market-offer-slots.has-two{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.market-offer-slots.has-two .trade-card-slot{
    min-height:300px;
    padding:10px;
}
.market-offer-slots.has-two .trade-card-slot img{
    height:170px;
}
.market-offer-slots.has-two .trade-card-slot strong{
    font-size:12px;
}
.market-second-offer-actions{
    display:flex;
    justify-content:center;
    gap:8px;
    margin-top:10px;
}
.market-second-offer-actions .btn{
    min-height:36px;
    padding:8px 11px;
    font-size:10px;
}
.market-equivalence-status{
    min-height:18px;
    margin:8px 4px 0;
    color:#888d82;
    font-size:10px;
    line-height:1.4;
    text-align:center;
}
.market-equivalence-status.is-valid{color:#a9c08f}
.market-equivalence-status.is-invalid{color:#d99a87}

.market-listing-offer-preview{
    position:relative;
    width:100%;
}
.market-listing-offer-preview .collection-card{
    width:100%;
}
.market-listing-offer-preview.is-double{
    min-height:365px;
}
.market-listing-offer-preview.is-double .collection-card{
    position:absolute;
    top:0;
    width:88%;
    height:100%;
    transition:transform .22s ease,filter .22s ease;
}
.market-listing-offer-preview.is-double .collection-card:first-child{
    left:0;
    transform:translateX(-2%) scale(.96);
    z-index:1;
}
.market-listing-offer-preview.is-double .collection-card:nth-child(2){
    right:0;
    transform:translateX(2%) scale(.96);
    z-index:2;
}
.market-card-trigger.has-multiple-offers:hover .market-listing-offer-preview.is-double .collection-card:first-child{
    transform:translateX(-8%) scale(.96);
}
.market-card-trigger.has-multiple-offers:hover .market-listing-offer-preview.is-double .collection-card:nth-child(2){
    transform:translateX(8%) scale(.96);
}
.market-multi-badge{
    position:absolute;
    right:9px;
    top:9px;
    z-index:8;
    padding:5px 8px;
    border:1px solid #6f603b;
    border-radius:999px;
    background:#17150e;
    color:#e2ca7e;
    font-size:9px;
    font-weight:900;
    letter-spacing:.5px;
}

.market-detail-offered-stack{
    width:100%;
    height:100%;
    display:flex;
    align-items:stretch;
    justify-content:center;
}
.market-detail-offered-stack:not(.is-double) .collection-card{
    width:330px!important;
    min-width:330px!important;
    max-width:330px!important;
    height:410px!important;
    min-height:410px!important;
    max-height:410px!important;
}
.market-detail-offered-stack.is-double{
    gap:10px;
    align-items:center;
}
.market-detail-offered-stack.is-double .collection-card{
    width:155px!important;
    min-width:155px!important;
    max-width:155px!important;
    height:300px!important;
    min-height:300px!important;
    max-height:300px!important;
}
.market-detail-offered-stack.is-double .card-art-wrap{
    height:190px!important;
    min-height:190px!important;
    flex-basis:190px!important;
}
.market-detail-offered-stack.is-double .card-info{
    padding:9px 10px!important;
}
.market-detail-offered-stack.is-double .card-info small{
    font-size:6px!important;
}
.market-detail-offered-stack.is-double .card-info h3{
    font-size:11px!important;
    line-height:1.05!important;
}
.market-detail-offered-stack.is-double .card-footer{
    font-size:7px!important;
}

@media(max-width:1200px){
    .market-offer-side{padding-top:0}
}
@media(max-width:820px){
    .market-offer-slots.has-two{
        grid-template-columns:1fr 1fr;
    }
    .market-detail-offered-stack.is-double{
        width:min(330px,100%);
        margin:0 auto;
    }
}
@media(max-width:520px){
    .market-offer-slots.has-two{
        grid-template-columns:1fr;
    }
    .market-detail-offered-stack.is-double .collection-card{
        width:145px!important;
        min-width:145px!important;
        max-width:145px!important;
    }
}
.market-listing-offer-preview.is-double{
    height:365px;
}
.market-listing-offer-preview.is-double .collection-card{
    height:365px!important;
    min-height:365px!important;
}


/* Patch 2.1.4 — composition du marché simplifiée */
.market-simple-mode{
    width:min(560px,100%);
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:8px;
    margin:0 auto 20px;
}
.market-simple-mode button{
    min-height:42px;
    border:1px solid #33372e;
    border-radius:11px;
    background:#11140f;
    color:#8d9287;
    font-weight:700;
    cursor:pointer;
}
.market-simple-mode button.active{
    border-color:#8f7739;
    background:#1a190f;
    color:#e4cd82;
}
.market-compose-dialog{
    width:min(960px,calc(100vw - 36px));
}
.market-compose-simple{
    grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr)!important;
    gap:22px!important;
    align-items:start!important;
    margin:0!important;
}
.market-choice-column{
    min-width:0;
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:9px;
}
.market-choice-kicker{
    height:16px;
    color:#8f875f;
    font-size:9px;
    font-weight:900;
    letter-spacing:1.4px;
    text-align:center;
}
.market-choice-slot,
.market-points-card{
    width:100%!important;
    height:360px!important;
    min-height:360px!important;
    max-height:360px!important;
    margin:0!important;
    box-sizing:border-box;
}
.market-compose-simple > .trade-double-arrow{
    width:72px;
    height:360px;
    margin-top:25px!important;
    display:grid!important;
    place-items:center!important;
    align-self:start!important;
}
.market-choice-slot img{
    width:100%!important;
    height:245px!important;
    object-fit:contain!important;
}
.market-choice-slot strong{
    max-width:100%;
    font-size:16px!important;
    line-height:1.15;
    text-align:center;
}
.market-choice-slot small{
    min-height:0!important;
    text-align:center;
}
.market-points-card{
    padding:24px!important;
    display:flex!important;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:10px;
    border:1px dashed #484b3d;
    border-radius:14px;
    background:#0e110d;
}
.market-points-card .market-points-kicker{
    color:#8f875f;
    font-size:9px;
    letter-spacing:1.4px;
}
.market-points-card strong{
    font:600 22px Georgia,serif;
    color:#eee7d8;
}
.market-points-card input{
    width:min(210px,100%)!important;
    text-align:center;
    font-size:22px;
}
.market-points-card > span:last-child{
    color:#92978c;
}
.market-second-offer-compact{
    min-height:40px;
    display:flex;
    justify-content:center;
    align-items:center;
}
.market-second-offer-compact[hidden]{display:none!important}
.market-second-offer-compact .btn{
    min-height:38px;
    padding:8px 13px;
    font-size:10px;
}
.market-second-selected{
    min-height:38px;
    max-width:100%;
    padding:8px 12px;
    border:1px solid #51462d;
    border-radius:10px;
    background:#171810;
    color:#d9c47f;
    font-size:10px;
    font-weight:800;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    cursor:pointer;
}
.market-combined-offer-art{
    width:100%;
    height:245px;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:7px;
    align-items:center;
}
.market-combined-offer-art img{
    width:100%!important;
    height:235px!important;
    object-fit:contain!important;
}
.market-equivalence-status{
    min-height:20px;
    margin:12px auto 0!important;
    text-align:center;
}
.market-create-submit{
    margin-top:12px!important;
}

@media(max-width:820px){
    .market-simple-mode{grid-template-columns:1fr}
    .market-compose-simple{
        grid-template-columns:1fr!important;
        gap:10px!important;
    }
    .market-compose-simple > .trade-double-arrow{
        width:100%!important;
        height:auto!important;
        margin:2px 0!important;
        transform:rotate(90deg);
    }
    .market-choice-slot,
    .market-points-card{
        width:min(360px,100%)!important;
        margin:0 auto!important;
    }
    .market-choice-column{align-items:center}
    .market-choice-kicker{width:100%}
}

.community-rules-panel,
.community-propose-panel,
.community-votes-section,
.community-history-section{
    margin-bottom:22px;
    padding:20px;
    border:1px solid #292d25;
    border-radius:16px;
    background:#0f120d;
}
.community-rule-duration,
.community-eligible,
.community-not-eligible{
    padding:7px 10px;
    border:1px solid #3a3d31;
    border-radius:999px;
    font-size:11px;
    font-weight:800;
    letter-spacing:.6px;
    text-transform:uppercase;
}
.community-rule-duration,
.community-eligible{
    color:#d5bd78;
    border-color:#5c5031;
    background:#17160f;
}
.community-not-eligible{
    color:#cf8e84;
    border-color:#5b302c;
    background:#1a100f;
}
.community-rules-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
}
.community-rules-grid article{
    min-width:0;
    padding:14px;
    border:1px solid #242820;
    border-radius:12px;
    background:#11140f;
}
.community-rules-grid strong{
    display:block;
    margin-bottom:6px;
    color:#e6deca;
    font:600 15px Georgia,serif;
}
.community-rules-grid p,
.community-eligibility-note{
    margin:0;
    color:#8d9287;
    font-size:12px;
    line-height:1.55;
}
.community-eligibility-note{
    margin:0 0 15px;
    padding:12px 14px;
    border:1px solid #49332e;
    border-radius:10px;
    background:#17100e;
}
.community-propose-layout{
    display:grid;
    grid-template-columns:240px 70px minmax(260px,1fr);
    align-items:center;
    gap:20px;
    max-width:850px;
    margin:16px auto 0;
}
.community-card-choice{
    position:relative;
    width:240px;
    height:330px;
    overflow:hidden;
    padding:15px;
    border:1px dashed #4c4d3d;
    border-radius:14px;
    background:#10130e;
    color:#e0d9c9;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:8px;
    cursor:pointer;
}
.community-card-choice:disabled{
    cursor:not-allowed;
    opacity:.45;
}
.community-card-choice-plus{
    color:#a78c48;
    font-size:54px;
    line-height:1;
}
.community-card-choice strong{
    font:600 16px Georgia,serif;
}
.community-card-choice small{
    color:#7f857a;
}
.community-card-choice.has-card{
    justify-content:flex-start;
    border-style:solid;
    padding:12px;
}
.community-card-choice.has-card img{
    width:100%;
    height:235px;
    object-fit:contain;
    border-radius:8px;
}
.community-card-choice.has-card .rarity-badge{
    position:absolute;
    top:18px;
    right:18px;
    z-index:2;
}
.community-card-choice.has-card small{
    width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    text-align:left;
}
.community-card-choice.has-card strong{
    width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    text-align:left;
}
.community-propose-arrow{
    color:#a78c48;
    font-size:42px;
    text-align:center;
}
.community-target-box{
    min-height:190px;
    padding:22px;
    border:1px solid #2d3128;
    border-radius:14px;
    background:#11140f;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:12px;
}
.community-target-box>small{
    color:#968353;
    font-size:10px;
    font-weight:900;
    letter-spacing:1.2px;
}
.community-target-box p{
    margin:0;
    color:#858b80;
    font-size:12px;
    line-height:1.45;
}
.community-propose-actions{
    display:flex;
    align-items:center;
    gap:14px;
    justify-content:center;
    margin-top:18px;
}
.community-vote-list{
    display:grid;
    gap:16px;
}
.community-vote-row{
    display:grid;
    grid-template-columns:220px minmax(0,1fr);
    gap:22px;
    align-items:center;
    padding:16px;
    border:1px solid #292d25;
    border-radius:15px;
    background:#11140f;
}
.community-vote-card-wrap{
    width:220px;
}
.community-vote-card-wrap .collection-card{
    width:100%;
    margin:0;
}
.community-vote-card-wrap .card-art-wrap{
    height:210px;
}
.community-vote-card-wrap .card-info h3{
    min-height:auto;
}
.community-missing-card{
    min-height:290px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:7px;
    border:1px dashed #43463a;
    border-radius:14px;
}
.community-missing-card small{color:#777d73}
.community-vote-content{
    min-width:0;
}
.community-vote-change{
    display:flex;
    align-items:center;
    gap:9px;
    margin-bottom:10px;
    color:#8e9388;
}
.community-rarity-pill{
    min-width:42px;
    padding:6px 9px;
    border:1px solid #484b3e;
    border-radius:9px;
    background:#171a14;
    text-align:center;
    font-weight:900;
}
.community-rarity-pill.rarity-ur{border-color:#8c5733;color:#e5a164}
.community-rarity-pill.rarity-l{border-color:#82703c;color:#e4c766}
.community-rarity-pill.rarity-sr{border-color:#765163;color:#d59ab2}
.community-rarity-pill.rarity-r{border-color:#655978;color:#b9a3d5}
.community-rarity-pill.rarity-pc{border-color:#53636d;color:#a7bcc8}
.community-vote-content h3{
    margin:0 0 4px;
    color:#eee7d7;
    font:600 25px Georgia,serif;
}
.community-vote-content>p{
    margin:0 0 16px;
    color:#7f857b;
    font-size:12px;
}
.community-vote-progress{
    height:10px;
    overflow:hidden;
    border:1px solid #31352c;
    border-radius:999px;
    background:#1b1717;
}
.community-vote-progress>span{
    display:block;
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,#726133,#b9a05b);
    transition:width .25s ease;
}
.community-vote-numbers{
    display:flex;
    flex-wrap:wrap;
    gap:14px;
    margin-top:9px;
    color:#848a80;
    font-size:12px;
}
.community-vote-numbers strong:first-child{color:#b9ad80}
.community-vote-numbers strong:nth-child(2){color:#a9827c}
.community-vote-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    margin-top:18px;
}
.community-vote-buttons{
    display:flex;
    gap:8px;
}
.community-vote-button{
    min-width:110px;
    height:42px;
    border:1px solid #41453a;
    border-radius:10px;
    background:#171a14;
    color:#bbbcb3;
    font-weight:800;
    cursor:pointer;
}
.community-vote-button.up:hover,
.community-vote-button.up.selected{
    border-color:#7b7048;
    background:#242315;
    color:#e2ca77;
}
.community-vote-button.down:hover,
.community-vote-button.down.selected{
    border-color:#74443f;
    background:#251614;
    color:#df9b91;
}
.community-vote-button:disabled{opacity:.45;cursor:not-allowed}
.community-vote-timer{
    padding:8px 11px;
    border:1px solid #3a3d33;
    border-radius:9px;
    color:#d5bd78;
    background:#151711;
    font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    font-size:13px;
    font-weight:800;
}
.community-history-list{
    display:grid;
    gap:9px;
}
.community-history-row{
    display:grid;
    grid-template-columns:minmax(220px,1fr) auto minmax(260px,1fr);
    gap:18px;
    align-items:center;
    padding:12px 14px;
    border:1px solid #282c24;
    border-radius:11px;
    background:#11140f;
}
.community-history-row>div:first-child{
    display:flex;
    flex-direction:column;
    gap:3px;
}
.community-history-row>div:first-child strong{color:#e5dfd1}
.community-history-row>div:first-child span{color:#8f875f;font-size:12px;font-weight:800}
.community-history-votes{display:flex;gap:10px;color:#92978d;font-size:12px}
.community-history-result{display:flex;flex-direction:column;gap:3px;text-align:right}
.community-history-result strong{font-size:12px;color:#c9c2b1}
.community-history-result small{color:#777d73;line-height:1.35}
.community-history-row.accepted{border-color:#514a2f}
.community-history-row.rejected{border-color:#49302e}
.community-history-row.indecisive{border-color:#393b34}

@media(max-width:1200px){
    .community-rules-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
    .community-rules-panel,
    .community-propose-panel,
    .community-votes-section,
    .community-history-section{padding:14px}
    .community-rules-grid{grid-template-columns:1fr}
    .community-propose-layout{grid-template-columns:1fr;justify-items:center}
    .community-propose-arrow{transform:rotate(90deg)}
    .community-target-box{width:100%;min-height:150px}
    .community-vote-row{grid-template-columns:1fr}
    .community-vote-card-wrap{width:min(240px,100%);margin:auto}
    .community-vote-footer{align-items:stretch;flex-direction:column}
    .community-vote-buttons{display:grid;grid-template-columns:1fr 1fr}
    .community-vote-button{min-width:0}
    .community-vote-timer{text-align:center}
    .community-history-row{grid-template-columns:1fr}
    .community-history-result{text-align:left}
}


/* Vote communautaire — hiérarchie compacte */
.community-votes-primary{
    margin-top:0;
}
.community-propose-entry{
    min-height:150px;
    width:100%;
    border:1px dashed #4a4d3e;
    border-radius:15px;
    background:#10130e;
    color:#dcd6c8;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:6px;
    cursor:pointer;
}
.community-propose-entry:hover:not(:disabled){
    border-color:#927b45;
    background:#15180f;
}
.community-propose-entry:disabled{
    opacity:.45;
    cursor:not-allowed;
}
.community-propose-entry-plus{
    color:#a78c48;
    font-size:54px;
    line-height:.9;
}
.community-propose-entry strong{
    font:600 18px Georgia,serif;
}
.community-propose-entry small{
    color:#7d8278;
}
.community-votes-empty{
    margin:0;
}
.community-eligibility-under-votes{
    margin:14px 0 0;
}
.community-rules-single .community-rules-copy{
    padding:18px 20px;
    border:1px solid #262a22;
    border-radius:13px;
    background:#11140f;
}
.community-rules-copy p{
    margin:0;
    color:#92978c;
    font-size:13px;
    line-height:1.62;
}
.community-rules-copy p + p{
    margin-top:10px;
}
.community-rules-copy strong{
    color:#e2dac7;
}
.community-own-proposal{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    padding:0 13px;
    border:1px solid #51482e;
    border-radius:10px;
    background:#18170f;
    color:#cdb873;
    font-size:12px;
    font-weight:800;
}
.community-propose-overlay{
    position:fixed;
    inset:0;
    z-index:120;
    display:none;
    align-items:center;
    justify-content:center;
    padding:24px;
    background:rgba(0,0,0,.68);
}
.community-propose-overlay.visible{
    display:flex;
}
.community-propose-dialog{
    position:relative;
    z-index:1;
    width:min(900px,100%);
    max-height:calc(100vh - 48px);
    overflow:auto;
    padding:22px;
    border:1px solid #3c3727;
    border-radius:18px;
    background:#0f120d;
    box-shadow:0 28px 70px rgba(0,0,0,.5);
}
.community-propose-close{
    width:42px;
    height:42px;
    border-color:#75633c!important;
    background:#24241e!important;
    color:#fff!important;
    font-size:27px!important;
}
.card-picker-card.is-disabled{
    opacity:.42;
    filter:saturate(.45);
    cursor:not-allowed;
    transform:none!important;
    border-color:#3c3d35;
}
.card-picker-card.is-disabled:hover{
    transform:none;
    border-color:#3c3d35;
}
.card-picker-disabled-label{
    position:absolute;
    z-index:4;
    top:8px;
    right:8px;
    max-width:calc(100% - 58px);
    padding:5px 7px;
    border:1px solid #69443f;
    border-radius:7px;
    background:rgba(39,20,18,.94);
    color:#dca096;
    font-size:8px;
    font-weight:900;
    letter-spacing:.4px;
    text-transform:uppercase;
}

@media(max-width:760px){
    .community-propose-overlay{padding:12px}
    .community-propose-dialog{padding:14px;max-height:calc(100vh - 24px)}
    .community-rules-single .community-rules-copy{padding:14px}
}


/* Vote communauté — ordre type Marché + navigation */
@media(min-width:761px){
    .nav-item:nth-last-child(3){
        margin-top:0;
    }
    .nav-item[href$="market.php"]{
        margin-top:16px;
    }
}
.community-rules-panel.community-rules-single{
    margin-bottom:18px;
}
.community-votes-section.community-votes-primary{
    margin-top:0;
}


/* Vote communauté — alignement navbar + grille type Marché */
@media(min-width:761px){
    .nav-list .nav-item,
    .nav-list .nav-item:nth-last-child(3),
    .nav-list .nav-item[href$="market.php"]{
        margin-top:0!important;
    }
}

.community-market-panel{
    margin-bottom:22px;
}
.community-vote-market-grid{
    align-items:start;
}
.community-vote-market-grid .community-propose-entry{
    min-height:365px;
    width:auto;
}
.community-vote-market-grid .community-propose-entry-plus{
    font-size:60px;
}
.community-vote-market-item{
    grid-column:span 2;
    display:block;
    min-width:0;
    padding:14px;
    border:1px solid #292d25;
    border-radius:15px;
    background:#11140f;
}
.community-vote-transform{
    display:grid;
    grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr);
    gap:10px;
    align-items:center;
}
.community-transform-side{
    position:relative;
    min-width:0;
    padding-top:27px;
}
.community-transform-label{
    position:absolute;
    top:0;
    left:0;
    color:#8f875f;
    font-size:9px;
    font-weight:900;
    letter-spacing:1.2px;
    text-transform:uppercase;
}
.community-transform-side .collection-card{
    width:100%;
    margin:0;
}
.community-transform-side .card-art-wrap{
    height:160px;
}
.community-transform-side .card-info{
    padding:10px 11px 11px;
}
.community-transform-side .card-info small{
    font-size:7px;
}
.community-transform-side .card-info h3{
    min-height:32px;
    font-size:12px;
    line-height:1.15;
}
.community-transform-side .card-footer{
    font-size:8px;
}
.community-transform-arrow{
    color:#b69b52;
    font-size:30px;
    text-align:center;
}
.community-vote-market-item .community-vote-content{
    margin-top:14px;
    padding-top:13px;
    border-top:1px solid #292d25;
}
.community-vote-heading-line{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:10px;
}
.community-vote-heading-line .community-vote-change{
    margin:0;
}
.community-vote-heading-line>small{
    color:#7f857b;
    text-align:right;
}
.community-votes-empty{
    min-height:365px;
}

@media(max-width:980px){
    .community-vote-market-item{
        grid-column:1 / -1;
    }
}
@media(max-width:620px){
    .community-vote-market-grid{
        grid-template-columns:1fr;
    }
    .community-vote-market-item{
        grid-column:span 1;
    }
    .community-vote-transform{
        grid-template-columns:1fr;
    }
    .community-transform-arrow{
        transform:rotate(90deg);
    }
    .community-vote-heading-line{
        align-items:flex-start;
        flex-direction:column;
    }
    .community-vote-heading-line>small{
        text-align:left;
    }
}


/* Vote communauté — règles compactes en deux colonnes */
@media (min-width: 901px){
    .community-rules-single .community-rules-copy{
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        column-gap:34px;
        row-gap:9px;
        padding:15px 18px;
    }
    .community-rules-copy p,
    .community-rules-copy p + p{
        margin:0;
    }
}

@media (max-width: 900px){
    .community-rules-single .community-rules-copy{
        display:block;
    }
    .community-rules-copy p + p{
        margin-top:10px;
    }
}


/* Vote communauté — correction du retrait gauche */
@media (min-width: 901px){
    .community-rules-single .community-rules-copy{
        padding-left:10px;
    }
}


/* Vote communauté — règles numérotées et colonnes indépendantes */
.community-rules-single .community-rules-copy.community-rules-numbered{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:34px;
    padding:14px 18px;
}
.community-rules-numbered .community-rules-column{
    display:flex;
    flex-direction:column;
    gap:10px;
    min-width:0;
}
.community-rules-numbered .community-rules-column p,
.community-rules-numbered .community-rules-column p + p{
    display:grid;
    grid-template-columns:24px minmax(0,1fr);
    gap:8px;
    align-items:start;
    margin:0;
}
.community-rule-number{
    width:22px;
    height:22px;
    display:grid;
    place-items:center;
    border:1px solid #66552f;
    border-radius:7px;
    background:#17170f;
    color:#d8bb63;
    font-size:10px;
    line-height:1;
    font-weight:900;
}
@media(max-width:900px){
    .community-rules-single .community-rules-copy.community-rules-numbered{
        grid-template-columns:1fr;
        gap:10px;
        padding:14px;
    }
    .community-rules-numbered .community-rules-column{
        gap:10px;
    }
}

/* Gracebound 2.1.15 — événements contextuels / cartes aux enchères */
.nav-event-badge{
    margin-left:auto;
    min-width:38px;
    height:24px;
    padding:0 7px 0 5px;
    border:1px solid rgba(211,181,96,.35);
    border-radius:12px;
    background:rgba(184,151,69,.14);
    color:#e5c76f;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:3px;
    flex:0 0 auto;
    font-size:9px;
    font-weight:900;
    line-height:1;
}
.nav-event-badge b{
    font:inherit;
    color:#f0d379;
}
.nav-event-bell{
    width:13px;
    height:13px;
    display:grid;
    place-items:center;
}
.nav-event-bell svg{
    width:13px!important;
    height:13px!important;
    stroke-width:2;
}
.nav-item.active .nav-event-badge{
    background:rgba(207,175,89,.2);
    border-color:rgba(225,196,111,.5);
}

.market-reserved-badge{
    position:absolute;
    z-index:7;
    left:9px;
    bottom:9px;
    max-width:calc(100% - 18px);
    padding:4px 7px;
    border:1px solid rgba(213,170,75,.42);
    border-radius:7px;
    background:rgba(20,17,10,.9);
    color:#d9b85e;
    font-size:8px;
    font-weight:900;
    letter-spacing:.55px;
    line-height:1;
    text-transform:uppercase;
    pointer-events:none;
}
.card-picker-card{
    position:relative;
}
.card-picker-market-label{
    position:absolute;
    z-index:8;
    left:8px;
    bottom:49px;
    max-width:calc(100% - 16px);
    padding:4px 6px;
    border:1px solid rgba(213,170,75,.42);
    border-radius:6px;
    background:rgba(20,17,10,.94);
    color:#d9b85e;
    font-size:7px;
    font-weight:900;
    letter-spacing:.45px;
    line-height:1;
    text-transform:uppercase;
    pointer-events:none;
}
.card-picker-card.is-disabled .card-picker-market-label{
    opacity:.72;
}
.card-picker-art img{
    display:block;
}

@media(max-width:760px){
    .nav-event-badge{
        position:absolute;
        top:3px;
        right:4px;
        min-width:18px;
        height:18px;
        padding:0 4px;
        border-radius:9px;
    }
    .nav-event-bell{
        display:none;
    }
}

/* Gracebound 2.1.16 — chat communautaire et messagerie */
.community-chat-panel{
    border:1px solid #2d3128;
    border-radius:18px;
    background:#0f120d;
    padding:18px;
}
.community-chat-heading{margin-bottom:12px}
.community-chat-notice{
    margin-bottom:12px;
    padding:10px 12px;
    border:1px solid rgba(200,173,106,.16);
    border-radius:10px;
    background:rgba(200,173,106,.045);
    color:#8d9186;
    font-size:11px;
}
.community-chat-stream{
    height:min(620px,calc(100vh - 360px));
    min-height:360px;
    overflow:auto;
    padding:12px;
    border:1px solid #252920;
    border-radius:14px;
    background:#0a0c09;
    scrollbar-width:thin;
}
.community-chat-message{
    display:grid;
    grid-template-columns:38px minmax(0,1fr);
    gap:10px;
    align-items:start;
    padding:7px 5px;
}
.community-chat-message + .community-chat-message{border-top:1px solid rgba(255,255,255,.025)}
.community-chat-avatar{
    width:36px;
    height:36px;
    border-radius:50%;
    object-fit:cover;
    border:1px solid #34382d;
    display:grid;
    place-items:center;
    font-size:13px;
}
.community-chat-bubble{min-width:0}
.community-chat-meta{
    display:flex;
    align-items:baseline;
    gap:8px;
    min-width:0;
}
.community-chat-meta a,.community-chat-meta strong{
    color:#ddd6c6;
    font-size:12px;
    font-weight:800;
}
.community-chat-meta a:hover{color:var(--gold2)}
.community-chat-meta time{
    color:#60655d;
    font-size:9px;
    white-space:nowrap;
}
.community-chat-bubble p{
    margin:3px 0 0;
    color:#b9b9af;
    font-size:13px;
    line-height:1.5;
    overflow-wrap:anywhere;
}
.community-chat-message.is-mine .community-chat-bubble p{color:#d6d1c4}
.community-chat-empty{
    min-height:300px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    color:#777c72;
    text-align:center;
    gap:5px;
}
.community-chat-empty strong{font:600 20px Georgia,serif;color:#cfc9bb}
.community-chat-form{margin-top:12px}
.community-chat-form textarea{width:100%;resize:vertical;min-height:62px;max-height:150px}
.community-chat-form-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:8px}
.community-chat-form-footer small{color:#696e65;font-size:10px}

.messaging-shell{
    display:grid;
    grid-template-columns:330px minmax(0,1fr);
    min-height:650px;
    border:1px solid #2d3128;
    border-radius:18px;
    overflow:hidden;
    background:#0f120d;
}
.messaging-conversations{
    min-width:0;
    border-right:1px solid #2b2f26;
    background:#0c0f0b;
}
.messaging-new{padding:16px;border-bottom:1px solid #292d24}
.messaging-new>small,.messaging-thread-head small{color:#8f875f;font-size:9px;font-weight:900;letter-spacing:1.3px}
.messaging-new form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:8px}
.messaging-conversation-list{padding:7px;display:flex;flex-direction:column;gap:4px}
.messaging-conversation{
    min-width:0;
    display:grid;
    grid-template-columns:38px minmax(0,1fr) auto;
    align-items:center;
    gap:9px;
    padding:9px;
    border:1px solid transparent;
    border-radius:11px;
    color:#b7b7ae;
}
.messaging-conversation:hover{background:#141711;border-color:#272b22}
.messaging-conversation.active{background:rgba(200,173,106,.08);border-color:rgba(200,173,106,.24)}
.messaging-conversation .avatar{width:36px;height:36px}
.messaging-conversation-copy{min-width:0;display:flex;flex-direction:column;gap:3px}
.messaging-conversation-copy strong{font-size:12px;color:#ded8cb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.messaging-conversation-copy small{font-size:10px;color:#747970;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.messaging-unread{
    min-width:23px;height:23px;padding:0 6px;border-radius:999px;display:grid;place-items:center;
    background:#b49346;color:#11130f;font-size:9px;font-weight:900;
}
.messaging-no-conversation{padding:22px 12px;color:#747970;font-size:11px;text-align:center}
.messaging-thread-panel{min-width:0;display:flex;flex-direction:column;background:#10130e}
.messaging-thread-head{display:flex;align-items:center;gap:11px;padding:14px 18px;border-bottom:1px solid #292d24}
.messaging-thread-head h2{font:600 19px Georgia,serif;margin:2px 0 0;color:#e4ded1}
.messaging-thread{
    flex:1;
    height:520px;
    overflow:auto;
    display:flex;
    flex-direction:column;
    gap:8px;
    padding:18px;
}
.private-message{max-width:min(72%,680px);display:flex;flex-direction:column;gap:4px}
.private-message p{margin:0;padding:10px 12px;border-radius:13px;font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.private-message time{font-size:8px;color:#666b63;padding:0 4px}
.private-message.is-theirs{align-self:flex-start}
.private-message.is-theirs p{background:#181b16;border:1px solid #2b2f26;color:#c8c5ba;border-bottom-left-radius:4px}
.private-message.is-mine{align-self:flex-end;align-items:flex-end}
.private-message.is-mine p{background:rgba(173,145,76,.16);border:1px solid rgba(200,173,106,.26);color:#e2dbc9;border-bottom-right-radius:4px}
.messaging-send-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:14px;border-top:1px solid #292d24;background:#0d100c}
.messaging-send-form textarea{resize:none;min-height:58px}
.messaging-thread-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;color:#787d73}
.messaging-thread-empty>span{font-size:48px;color:#8e7947;margin-bottom:8px}
.messaging-thread-empty h2{font:600 25px Georgia,serif;color:#d8d2c3;margin:0 0 6px}
.messaging-thread-empty p{max-width:430px;font-size:12px;line-height:1.5}
.friend-message-link{min-width:54px;text-align:center}

@media(max-width:900px){
    .messaging-shell{grid-template-columns:1fr;min-height:0}
    .messaging-conversations{border-right:0;border-bottom:1px solid #2b2f26;max-height:310px;overflow:auto}
    .messaging-thread{height:430px}
    .private-message{max-width:88%}
    .community-chat-stream{height:460px;min-height:300px}
}
@media(max-width:560px){
    .messaging-new form,.messaging-send-form{grid-template-columns:1fr}
    .community-chat-message{grid-template-columns:32px minmax(0,1fr)}
    .community-chat-avatar{width:30px;height:30px}
}

@media(min-width:761px){
    .sidebar .nav-list{
        flex:1 1 auto;
        min-height:0;
        overflow-y:auto;
        overflow-x:hidden;
        scrollbar-width:none;
        padding-right:2px;
    }
    .sidebar .nav-list::-webkit-scrollbar{display:none}
    .sidebar-user{margin-top:10px;flex:0 0 auto}
}

.community-chat-form textarea{
    min-height:54px;
    height:54px;
    max-height:150px;
    padding:16px 14px;
    line-height:20px;
    overflow-y:auto;
}
.community-chat-form-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-top:8px;
}
.community-chat-form-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
}
.community-chat-tag-button{
    min-height:38px;
    padding:0 13px;
}
.chat-card-tag{
    appearance:none;
    display:inline;
    padding:0;
    border:0;
    background:transparent;
    color:#d7bf79;
    font:inherit;
    font-weight:800;
    line-height:inherit;
    cursor:pointer;
    text-decoration:none;
    border-bottom:1px dotted currentColor;
}
.chat-card-tag:hover,
.chat-card-tag:focus-visible{
    color:#f0d98d;
    outline:none;
    border-bottom-style:solid;
}
.chat-card-tag.rarity-ur{color:#d88a4a}
.chat-card-tag.rarity-l{color:#e5c65f}
.chat-card-tag.rarity-sr{color:#c98aa2}
.chat-card-tag.rarity-r{color:#a88fc4}
.chat-card-tag.rarity-pc{color:#91a9b8}
.chat-card-tag.rarity-c{color:#9aa191}
.chat-card-preview{
    position:fixed;
    z-index:260;
    pointer-events:auto;
    opacity:0;
    transform:translateY(4px);
    transition:opacity .12s ease,transform .12s ease;
}
.chat-card-preview.visible{
    opacity:1;
    transform:translateY(0);
}
.chat-card-preview[hidden]{display:none!important}
.chat-card-preview .chat-preview-card{
    width:100%;
    margin:0;
    box-shadow:0 18px 50px rgba(0,0,0,.55);
}
.chat-card-preview .card-art-wrap{
    height:220px;
}
.chat-card-preview .card-info h3{
    font-size:17px;
}

@media(max-width:700px){
    .community-chat-form-footer{
        align-items:stretch;
        flex-direction:column;
    }
    .community-chat-tag-button{
        width:100%;
    }
    .community-chat-form-actions{
        width:100%;
    }
    .community-chat-form-actions .btn{
        flex:1;
    }
}

.community-chat-message.is-mentioned{
    margin:3px 0;
    padding:9px 10px;
    border:1px solid rgba(218,184,92,.34);
    border-radius:11px;
    background:linear-gradient(90deg,rgba(205,169,74,.14),rgba(205,169,74,.045));
    box-shadow:inset 3px 0 0 rgba(225,192,96,.62);
}
.community-chat-message.is-mentioned + .community-chat-message{
    border-top-color:transparent;
}
.chat-mention{
    display:inline;
    color:#d9bb67;
    font-weight:850;
}
.community-chat-notice strong{
    color:#c7ad67;
    font-weight:850;
}
.chat-card-preview-actions{
    display:flex;
    flex-direction:column;
    gap:6px;
    padding:10px;
    border:1px solid #34382d;
    border-top:0;
    border-radius:0 0 12px 12px;
    background:#10130e;
    box-shadow:0 18px 50px rgba(0,0,0,.4);
}
.chat-card-preview-actions .btn{
    width:100%;
    min-height:40px;
}
.chat-card-preview-actions small{
    color:#777d72;
    font-size:9px;
    line-height:1.35;
    text-align:center;
}
.chat-card-preview:has(.chat-card-preview-actions) .chat-preview-card{
    border-bottom-left-radius:0;
    border-bottom-right-radius:0;
}

.private-message.is-trade-offer{
    width:min(88%,720px);
    max-width:720px;
    align-items:stretch;
}
.private-message.is-trade-offer.is-mine{
    align-self:flex-end;
}
.private-message.is-trade-offer.is-theirs{
    align-self:flex-start;
}
.private-trade-offer{
    width:100%;
    padding:13px;
    border:1px solid rgba(200,173,106,.28);
    border-radius:14px;
    background:linear-gradient(145deg,rgba(181,148,68,.09),rgba(15,18,13,.96) 40%);
}
.private-trade-head{
    display:flex;
    flex-direction:column;
    gap:3px;
    margin-bottom:11px;
}
.private-trade-head small{
    color:#a58e54;
    font-size:8px;
    font-weight:900;
    letter-spacing:1.35px;
}
.private-trade-head strong{
    color:#e0dacb;
    font:600 14px Georgia,serif;
}
.private-trade-cards{
    display:grid;
    grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr);
    gap:9px;
    align-items:center;
}
.private-trade-card{
    position:relative;
    min-width:0;
    padding:8px;
    border:1px solid #34382e;
    border-radius:11px;
    background:#0c0f0b;
    overflow:hidden;
}
.private-trade-card>small{
    display:block;
    margin:0 0 6px;
    color:#777d72;
    font-size:8px;
    font-weight:900;
    letter-spacing:1px;
}
.private-trade-card img{
    width:100%;
    height:145px;
    display:block;
    object-fit:contain;
    border-radius:7px;
    background:#090b08;
}
.private-trade-card .rarity-badge{
    top:28px;
    right:11px;
}
.private-trade-card>strong{
    display:block;
    min-height:30px;
    margin-top:7px;
    color:#d9d3c5;
    font:600 12px Georgia,serif;
    line-height:1.25;
    text-align:center;
}
.private-trade-arrow{
    display:grid;
    place-items:center;
    color:#b89a50;
    font-size:28px;
}
.private-trade-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-top:11px;
    padding-top:10px;
    border-top:1px solid #292d25;
}
.private-trade-status{
    display:inline-flex;
    align-items:center;
    min-height:26px;
    padding:0 9px;
    border:1px solid #45483c;
    border-radius:999px;
    color:#aaa99f;
    font-size:9px;
    font-weight:850;
    text-transform:uppercase;
    letter-spacing:.7px;
}
.private-trade-offer[data-trade-status="accepted"] .private-trade-status{
    border-color:rgba(112,170,108,.35);
    color:#9dcc99;
    background:rgba(79,135,75,.09);
}
.private-trade-offer[data-trade-status="rejected"] .private-trade-status,
.private-trade-offer[data-trade-status="cancelled"] .private-trade-status{
    border-color:rgba(175,104,88,.32);
    color:#c59589;
    background:rgba(140,74,61,.08);
}
.private-trade-offer.is-resolved{
    opacity:.82;
}
.private-trade-actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:7px;
}
.private-trade-actions .btn{
    min-height:36px;
    padding:0 12px;
}

@media(max-width:620px){
    .private-message.is-trade-offer{
        width:96%;
        max-width:none;
    }
    .private-trade-cards{
        grid-template-columns:1fr;
    }
    .private-trade-arrow{
        transform:rotate(90deg);
        min-height:26px;
    }
    .private-trade-card img{
        height:170px;
    }
    .private-trade-footer{
        align-items:stretch;
        flex-direction:column;
    }
    .private-trade-actions .btn{
        flex:1;
    }
}
.community-chat-mention-button{
    appearance:none;
    display:inline-grid;
    place-items:center;
    width:21px;
    height:21px;
    margin-left:-3px;
    border:1px solid #34382e;
    border-radius:7px;
    background:#121510;
    color:#8c8f84;
    font-size:11px;
    font-weight:900;
    cursor:pointer;
    vertical-align:middle;
}
.community-chat-mention-button:hover,
.community-chat-mention-button:focus-visible{
    border-color:#8f7843;
    color:#d8bb67;
    outline:none;
}

/* Chat communauté — mentions rapides et échange direct */
.community-chat-input-wrap{
    position:relative;
    width:100%;
    min-width:0;
}
.community-chat-input-wrap textarea{
    width:100%;
}
.community-mention-suggestions{
    position:absolute;
    left:0;
    right:0;
    bottom:calc(100% + 7px);
    z-index:240;
    max-height:300px;
    overflow:auto;
    padding:6px;
    border:1px solid #3b3c31;
    border-radius:12px;
    background:#0e110d;
    box-shadow:0 18px 48px rgba(0,0,0,.48);
}
.community-mention-suggestions[hidden]{display:none!important}
.community-mention-suggestion{
    appearance:none;
    width:100%;
    min-height:48px;
    display:grid;
    grid-template-columns:34px minmax(0,1fr);
    gap:10px;
    align-items:center;
    padding:7px 9px;
    border:1px solid transparent;
    border-radius:9px;
    background:transparent;
    color:#d7d2c5;
    text-align:left;
    cursor:pointer;
}
.community-mention-suggestion:hover,
.community-mention-suggestion.active{
    border-color:rgba(199,169,91,.35);
    background:rgba(185,151,69,.11);
}
.community-mention-suggestion img,
.mention-suggestion-avatar{
    width:34px;
    height:34px;
    border-radius:50%;
    object-fit:cover;
    display:grid;
    place-items:center;
    background:#1b1f18;
    color:#cbb36f;
    font-weight:900;
}
.community-mention-suggestion span:last-child{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:2px;
}
.community-mention-suggestion strong{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#e5e0d4;
    font-size:12px;
}
.community-mention-suggestion small{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    color:#858a80;
    font-size:10px;
}
.chat-card-tag:disabled{
    opacity:.62;
    cursor:wait;
}


.market-list-heading-tools{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end}
.market-availability-tabs{display:flex;gap:7px}
.market-availability-tabs button{height:34px;padding:0 12px;border:1px solid #34372d;border-radius:10px;background:#11140f;color:#898d82;cursor:pointer;font-weight:700}
.market-availability-tabs button.active{border-color:#8e7640;background:#1b1a12;color:#e6ca76}
.market-card-trigger[hidden]{display:none!important}
.market-possible-badge{position:absolute;left:9px;bottom:9px;padding:5px 8px;border:1px solid #6f643e;border-radius:999px;background:rgba(18,21,15,.92);color:#d8bd6c;font-size:9px;font-weight:900;letter-spacing:.5px;text-transform:uppercase;z-index:5}
.market-listing-offer-preview{position:relative}

.community-chat-tag-actions{display:flex;gap:8px;flex-wrap:wrap}
.chat-card-tag.is-have{box-shadow:inset 0 -2px 0 rgba(112,181,123,.75)}
.chat-card-tag.is-want{box-shadow:inset 0 -2px 0 rgba(213,174,83,.85)}
.chat-card-tag.is-have::before{content:none}
.chat-card-tag.is-want::before{content:none}

.profile-preferences-panel{margin-top:18px;padding:20px 22px;border:1px solid #2d3128;border-radius:15px;background:#10130e;display:flex;align-items:center;justify-content:space-between;gap:24px}
.profile-preferences-panel small{color:#8e8050;font-size:9px;font-weight:900;letter-spacing:1.3px}
.profile-preferences-panel h2{margin:6px 0 7px;font:600 21px Georgia,serif;color:#ebe4d6}
.profile-preferences-panel p{margin:0;color:#8e9388;max-width:760px;line-height:1.5}
.profile-setting-switch{display:flex;align-items:center;gap:10px;min-width:max-content;padding:10px 13px;border:1px solid #34372e;border-radius:11px;background:#151812;color:#d9d3c5;font-weight:700;cursor:pointer}
.profile-setting-switch input{width:18px;height:18px;accent-color:#b7984d}

@media(max-width:760px){
  .market-list-heading-tools{align-items:flex-start;justify-content:flex-start}
  .market-availability-tabs{width:100%}
  .market-availability-tabs button{flex:1}
  .profile-preferences-panel{align-items:flex-start;flex-direction:column}
  .community-chat-tag-actions{width:100%}
  .community-chat-tag-actions .btn{flex:1;min-width:170px}
}


/* Messagerie 2.1.25 — taille stable + indicateur de frappe */
@media(min-width:901px){
    .messaging-shell{
        height:clamp(600px, 68vh, 720px);
        min-height:0;
    }
    .messaging-conversations,
    .messaging-thread-panel{
        min-height:0;
        overflow:hidden;
    }
    .messaging-conversation-list{
        min-height:0;
        max-height:100%;
        overflow-y:auto;
    }
    .messaging-thread{
        height:auto;
        min-height:0;
        flex:1 1 auto;
    }
}
.messaging-typing{
    min-height:28px;
    padding:4px 18px 6px;
    display:flex;
    align-items:center;
    gap:8px;
    color:#918d80;
    font-size:10px;
    background:#10130e;
    opacity:0;
    visibility:hidden;
    transition:opacity .15s ease;
}
.messaging-typing.is-visible{
    opacity:1;
    visibility:visible;
}
.typing-dots{
    display:inline-flex;
    align-items:center;
    gap:3px;
}
.typing-dots i{
    width:4px;
    height:4px;
    border-radius:50%;
    background:#c2a45b;
    animation:graceboundTypingDot 1.05s infinite ease-in-out;
}
.typing-dots i:nth-child(2){animation-delay:.14s}
.typing-dots i:nth-child(3){animation-delay:.28s}
@keyframes graceboundTypingDot{
    0%,60%,100%{transform:translateY(0);opacity:.45}
    30%{transform:translateY(-3px);opacity:1}
}
@media(prefers-reduced-motion:reduce){
    .typing-dots i{animation:none;opacity:.8}
}

/* Roue de la chance */
.wheel-page-panel{
    border:1px solid #292d24;
    border-radius:18px;
    background:#0d100c;
    padding:22px;
}
.wheel-test-banner{
    display:flex;
    align-items:center;
    gap:12px;
    padding:10px 14px;
    margin-bottom:20px;
    border:1px solid #53451f;
    border-radius:12px;
    background:#15150e;
    color:#a9a99f;
    font-size:12px;
}
.wheel-test-banner strong{
    color:#e0bd58;
    letter-spacing:1px;
    font-size:10px;
}
.wheel-layout{
    display:grid;
    grid-template-columns:minmax(440px, 1.15fr) minmax(300px,.85fr);
    gap:34px;
    align-items:center;
}
.wheel-stage{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    min-height:610px;
    position:relative;
}
.lucky-wheel{
    --wheel-size:min(540px, 64vw);
    width:var(--wheel-size);
    aspect-ratio:1;
    position:relative;
    border-radius:50%;
    border:8px solid #6f5b2b;
    box-shadow:0 0 0 2px #2c281a, 0 18px 60px rgba(0,0,0,.45), inset 0 0 60px rgba(0,0,0,.35);
    background:conic-gradient(from -90deg,
        #687062 0deg 45deg,
        #8297a5 45deg 90deg,
        #a78a39 90deg 135deg,
        #9279aa 135deg 180deg,
        #b96f8d 180deg 225deg,
        #6f5427 225deg 270deg,
        #c8723c 270deg 315deg,
        #d8b844 315deg 360deg
    );
    transition:transform 4.6s cubic-bezier(.12,.68,.08,1);
}
.lucky-wheel::after{
    content:"";
    position:absolute;
    inset:14px;
    border:1px solid rgba(255,255,255,.17);
    border-radius:50%;
    pointer-events:none;
}
.lucky-wheel-pointer{
    position:absolute;
    z-index:5;
    top:20px;
    left:50%;
    transform:translateX(-50%);
    width:0;
    height:0;
    border-left:18px solid transparent;
    border-right:18px solid transparent;
    border-top:34px solid #ead16f;
    filter:drop-shadow(0 4px 7px rgba(0,0,0,.6));
}
.wheel-hub{
    position:absolute;
    inset:50% auto auto 50%;
    transform:translate(-50%,-50%);
    width:82px;
    aspect-ratio:1;
    display:grid;
    place-items:center;
    border-radius:50%;
    border:4px solid #755e28;
    background:#11140f;
    box-shadow:0 0 0 2px rgba(0,0,0,.5), inset 0 0 24px rgba(208,173,74,.18);
    color:#e0bd58;
    font-size:28px;
    z-index:4;
}
.wheel-segment-label{
    position:absolute;
    left:50%;
    top:50%;
    width:112px;
    margin-left:-56px;
    margin-top:-42px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:3px;
    text-align:center;
    color:#fff;
    font-weight:900;
    line-height:1.05;
    text-shadow:0 2px 5px rgba(0,0,0,.82);
    transform-origin:56px 42px;
    z-index:2;
    pointer-events:none;
}
.wheel-segment-label strong{
    display:block;
    max-width:108px;
    font-size:12px;
    white-space:nowrap;
}
.wheel-segment-label small{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:38px;
    height:18px;
    padding:0 6px;
    border:1px solid rgba(255,255,255,.32);
    border-radius:999px;
    background:rgba(10,12,9,.55);
    color:#fff;
    font-size:9px;
    letter-spacing:.3px;
}
.wheel-segment-image{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    position:relative;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.28);
    border-radius:10px;
    background:rgba(10,12,9,.38);
    box-shadow:0 3px 10px rgba(0,0,0,.28);
}
.wheel-segment-image img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
}
.wheel-segment-image.has-multiple img{
    position:absolute;
    width:60%;
    height:82%;
    object-fit:contain;
    filter:drop-shadow(0 2px 3px rgba(0,0,0,.32));
}
.wheel-segment-image.has-multiple img:nth-child(1){transform:translateX(-12px) rotate(-9deg)}
.wheel-segment-image.has-multiple img:nth-child(2){transform:translateY(-2px)}
.wheel-segment-image.has-multiple img:nth-child(3){transform:translateX(12px) rotate(9deg)}
.wheel-segment-image.is-mega{box-shadow:0 0 0 1px rgba(229,191,83,.35) inset,0 3px 10px rgba(0,0,0,.32)}
.wheel-label-0{transform:rotate(22.5deg) translateY(-190px) rotate(-22.5deg)}
.wheel-label-1{transform:rotate(67.5deg) translateY(-190px) rotate(-67.5deg)}
.wheel-label-2{transform:rotate(112.5deg) translateY(-190px) rotate(-112.5deg)}
.wheel-label-3{transform:rotate(157.5deg) translateY(-190px) rotate(-157.5deg)}
.wheel-label-4{transform:rotate(202.5deg) translateY(-190px) rotate(-202.5deg)}
.wheel-label-5{transform:rotate(247.5deg) translateY(-190px) rotate(-247.5deg)}
.wheel-label-6{transform:rotate(292.5deg) translateY(-190px) rotate(-292.5deg)}
.wheel-label-7{transform:rotate(337.5deg) translateY(-190px) rotate(-337.5deg)}
.wheel-spin-button{
    min-width:230px;
    margin-top:28px;
}
.wheel-stock{
    margin:10px 0 0;
    color:#888d82;
    font-size:12px;
}
.wheel-stock strong{color:#e0d9c8}
.wheel-prize-panel{
    border:1px solid #292d24;
    border-radius:16px;
    background:#10130e;
    padding:18px;
}
.wheel-prize-list{display:grid;gap:8px}
.wheel-prize-row{
    display:grid;
    grid-template-columns:14px 24px minmax(0,1fr) auto;
    gap:9px;
    align-items:center;
    min-height:43px;
    padding:8px 10px;
    border:1px solid #242820;
    border-radius:10px;
    color:#b9b8af;
}
.wheel-prize-row strong{font-size:12px;color:#e4dfd2}
.wheel-prize-chance{font-size:11px;font-weight:900;color:#d6bd70;white-space:nowrap}
.wheel-prize-swatch{width:11px;height:24px;border-radius:5px;background:#a78a39}
.wheel-prize-mega_booster .wheel-prize-swatch{background:#6f5427}
.wheel-prize-common .wheel-prize-swatch{background:#687062}
.wheel-prize-uncommon .wheel-prize-swatch{background:#8297a5}
.wheel-prize-rare .wheel-prize-swatch{background:#9279aa}
.wheel-prize-super_rare .wheel-prize-swatch{background:#b96f8d}
.wheel-prize-ultra_rare .wheel-prize-swatch{background:#c8723c}
.wheel-prize-legendary .wheel-prize-swatch{background:#d8b844}
.wheel-note{margin:14px 0 0;color:#777c72;font-size:11px;line-height:1.5}
.wheel-result-overlay{
    position:fixed;
    inset:0;
    z-index:180;
    display:none;
    align-items:center;
    justify-content:center;
    padding:26px;
    background:rgba(0,0,0,.72);
    backdrop-filter:blur(6px);
}
.wheel-result-overlay.is-open{display:flex}
.wheel-result-dialog{
    position:relative;
    z-index:2;
    width:min(1240px,96vw);
    max-height:92vh;
    overflow:auto;
    border:1px solid #57471f;
    border-radius:18px;
    background:#0e110d;
    padding:20px;
    box-shadow:0 28px 90px rgba(0,0,0,.55);
}
.wheel-result-close{
    background:#34362f;
    color:#fff;
    border-color:#777a6e;
}
.wheel-choice-intro{color:#a3a79d;margin-bottom:14px}
.wheel-choice-grid{
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:12px;
    max-height:63vh;
    overflow:auto;
    padding:2px 4px 10px;
}
.wheel-choice-card{
    appearance:none;
    border:0;
    background:transparent;
    padding:0;
    text-align:left;
    cursor:pointer;
    min-width:0;
}
.wheel-choice-card .collection-card{width:100%;height:100%}
.wheel-choice-card.is-selected .collection-card{
    outline:2px solid #e1bd59;
    outline-offset:2px;
    transform:translateY(-3px);
}
.wheel-choice-actions{
    position:sticky;
    bottom:-20px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    margin:14px -20px -20px;
    padding:14px 20px;
    border-top:1px solid #292d24;
    background:#0e110d;
}
.wheel-choice-actions span{color:#8d9187;font-size:12px}
.wheel-booster-win,
.wheel-final-card{
    min-height:340px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
    gap:14px;
}
.wheel-booster-visual{
    width:118px;
    height:164px;
    position:relative;
    display:grid;
    place-items:center;
}
.wheel-booster-visual img{
    width:100%;
    height:100%;
    object-fit:contain;
    filter:drop-shadow(0 12px 18px rgba(0,0,0,.42));
}
.wheel-booster-visual.has-multiple{width:190px}
.wheel-booster-visual.has-multiple img{
    position:absolute;
    width:88px;
    height:142px;
}
.wheel-booster-visual.has-multiple img:nth-child(1){transform:translateX(-50px) rotate(-9deg)}
.wheel-booster-visual.has-multiple img:nth-child(2){transform:translateY(-5px)}
.wheel-booster-visual.has-multiple img:nth-child(3){transform:translateX(50px) rotate(9deg)}
.wheel-booster-visual.is-mega img{filter:drop-shadow(0 12px 18px rgba(0,0,0,.5)) drop-shadow(0 0 8px rgba(220,177,66,.15))}
.wheel-booster-visual span{
    width:86px;
    aspect-ratio:1;
    border-radius:50%;
    display:grid;
    place-items:center;
    border:1px solid #846d31;
    background:#18180e;
    color:#e2c25f;
    font-size:34px;
}
.wheel-booster-win h3{margin:0;font:600 26px Georgia,serif;color:#eee7d8}
.wheel-booster-win p,.wheel-final-card p{color:#8e9388;margin:0}
.wheel-final-card .wheel-final-static{width:min(280px,100%);pointer-events:none}
@media(max-width:1100px){
    .wheel-layout{grid-template-columns:1fr}
    .wheel-stage{min-height:560px}
    .wheel-choice-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:720px){
    .wheel-page-panel{padding:14px}
    .wheel-stage{min-height:430px}
    .lucky-wheel{--wheel-size:min(360px,88vw)}
    .lucky-wheel-pointer{top:8px}
    .wheel-segment-label{width:78px;margin-left:-39px;margin-top:-32px;gap:2px;transform-origin:39px 32px}
    .wheel-segment-image{width:34px;height:34px;border-radius:7px}
    .wheel-segment-label strong{font-size:9px;max-width:76px}
    .wheel-segment-label small{height:15px;min-width:30px;padding:0 4px;font-size:7px}
    .wheel-label-0{transform:rotate(22.5deg) translateY(-126px) rotate(-22.5deg)}
    .wheel-label-1{transform:rotate(67.5deg) translateY(-126px) rotate(-67.5deg)}
    .wheel-label-2{transform:rotate(112.5deg) translateY(-126px) rotate(-112.5deg)}
    .wheel-label-3{transform:rotate(157.5deg) translateY(-126px) rotate(-157.5deg)}
    .wheel-label-4{transform:rotate(202.5deg) translateY(-126px) rotate(-202.5deg)}
    .wheel-label-5{transform:rotate(247.5deg) translateY(-126px) rotate(-247.5deg)}
    .wheel-label-6{transform:rotate(292.5deg) translateY(-126px) rotate(-292.5deg)}
    .wheel-label-7{transform:rotate(337.5deg) translateY(-126px) rotate(-337.5deg)}
    .wheel-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .wheel-choice-actions{align-items:stretch;flex-direction:column}
    .wheel-choice-actions .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
    .lucky-wheel{transition-duration:.2s}
}


.wheel-ownership-badge{
    position:absolute;
    top:9px;
    right:9px;
    z-index:5;
    max-width:calc(100% - 64px);
    padding:5px 7px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:8px;
    background:rgba(9,11,8,.9);
    color:#e8e4d8;
    font-size:9px;
    font-weight:900;
    line-height:1;
    letter-spacing:.7px;
    text-transform:uppercase;
    box-shadow:0 2px 8px rgba(0,0,0,.35);
    pointer-events:none;
}
.wheel-ownership-badge.is-new{
    border-color:#bda24f;
    background:rgba(54,45,19,.94);
    color:#f2d676;
}
.wheel-ownership-badge.is-owned{
    border-color:#4c5148;
    background:rgba(22,25,20,.94);
    color:#aeb3a8;
}
.wheel-choice-card.is-new .collection-card{
    box-shadow:0 0 0 1px rgba(213,181,83,.12), 0 8px 24px rgba(0,0,0,.22);
}

.recycle-mode-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}
@media(max-width:760px){
    .recycle-mode-actions{
        width:100%;
        justify-content:stretch;
    }
    .recycle-mode-actions .btn{
        flex:1 1 100%;
    }
}


.duplicate-recycle-modal{
    position:fixed;
    inset:0;
    z-index:300;
    display:grid;
    place-items:center;
    padding:28px;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .18s ease,visibility .18s ease;
}
.duplicate-recycle-modal.visible{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}
.duplicate-recycle-backdrop{
    position:absolute;
    inset:0;
    border:0;
    background:rgba(0,0,0,.88);
    backdrop-filter:blur(9px);
}
.duplicate-recycle-panel{
    position:relative;
    z-index:1;
    width:min(1180px,96vw);
    height:min(820px,90vh);
    display:grid;
    grid-template-rows:auto auto minmax(0,1fr) auto;
    overflow:hidden;
    border:1px solid #3a3f34;
    border-radius:18px;
    background:#0f120d;
    box-shadow:0 30px 100px rgba(0,0,0,.72);
}
.duplicate-recycle-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    padding:22px 24px 18px;
    border-bottom:1px solid #282d25;
}
.duplicate-recycle-header h2{
    margin:2px 0 6px;
    font-size:24px;
}
.duplicate-recycle-header p:not(.eyebrow){
    max-width:760px;
    margin:0;
    color:#8b9086;
    font-size:12px;
}
.duplicate-recycle-tools{
    display:flex;
    align-items:center;
    gap:10px;
    padding:12px 18px;
    border-bottom:1px solid #242821;
    background:#11140f;
    flex-wrap:wrap;
}
.duplicate-recycle-bulk-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}
.duplicate-recycle-filter-row{
    display:flex;
    align-items:center;
    gap:10px;
    flex:1 1 100%;
    flex-wrap:wrap;
}
.duplicate-recycle-search-field{
    flex:1 1 260px;
    min-width:220px;
}
.duplicate-recycle-filter-row .select-control{
    flex:1 1 190px;
    min-width:165px;
}
.duplicate-recycle-summary{
    margin-left:auto;
    color:#a9ad9f;
    font-size:11px;
    font-weight:700;
}
.duplicate-recycle-empty{
    grid-column:1/-1;
    border:1px dashed #34392f;
    border-radius:14px;
    padding:28px 18px;
    text-align:center;
    color:#8f9589;
    background:rgba(255,255,255,.02);
}
.duplicate-recycle-grid{
    min-height:0;
    overflow:auto;
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(180px,1fr));
    align-content:start;
    gap:12px;
    padding:18px;
}
.duplicate-recycle-card{
    position:relative;
    min-width:0;
    overflow:hidden;
    padding:0;
    border:1px solid #2b3028;
    border-radius:13px;
    background:#121510;
    color:#e8e5da;
    text-align:left;
    cursor:pointer;
    opacity:.5;
    filter:saturate(.55);
    transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease,opacity .14s ease,filter .14s ease;
}
.duplicate-recycle-card:hover{
    transform:translateY(-2px);
    border-color:#6b603b;
}
.duplicate-recycle-card.is-selected{
    opacity:1;
    filter:none;
    border-color:#a58c4a;
    box-shadow:0 0 0 1px rgba(189,159,76,.22),0 12px 30px rgba(0,0,0,.35);
}
.duplicate-recycle-check{
    position:absolute;
    z-index:7;
    top:8px;
    right:8px;
    width:25px;
    height:25px;
    display:grid;
    place-items:center;
    border:1px solid #555b50;
    border-radius:50%;
    background:rgba(11,13,10,.9);
    color:#eed270;
    font-size:14px;
    font-weight:900;
    box-shadow:0 3px 12px rgba(0,0,0,.4);
}
.duplicate-recycle-card.is-selected .duplicate-recycle-check{
    border-color:#c4a94f;
    background:#332c17;
}
.duplicate-recycle-image-wrap{
    position:relative;
    aspect-ratio:4/5;
    overflow:hidden;
    display:flex;
    align-items:center;
    justify-content:center;
    background:radial-gradient(circle at 50% 42%,#242820 0,#11140f 58%,#090b08 100%);
    padding:10px;
}
.duplicate-recycle-image-wrap img{
    display:block;
    width:auto;
    height:auto;
    max-width:100%;
    max-height:100%;
    object-fit:contain;
    object-position:center;
    padding:0;
    filter:drop-shadow(0 8px 12px rgba(0,0,0,.42));
}
.duplicate-recycle-image-wrap .rarity-badge{
    z-index:6;
}
.duplicate-recycle-card-info{
    display:flex;
    flex-direction:column;
    gap:4px;
    min-width:0;
    padding:10px 11px 12px;
}
.duplicate-recycle-card-info strong{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:11px;
}
.duplicate-recycle-card-info span{
    color:#8d9288;
    font-size:9px;
}
.duplicate-recycle-card-info em{
    margin-top:2px;
    color:#d8bd68;
    font-size:10px;
    font-style:normal;
    font-weight:800;
}
.duplicate-recycle-footer{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    gap:16px;
    padding:13px 18px;
    border-top:1px solid #2c3028;
    background:#11140f;
}
.duplicate-recycle-footer>div{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:2px;
}
.duplicate-recycle-footer strong{
    color:#e8e2d3;
    font-size:12px;
}
.duplicate-recycle-footer small{
    color:#c1a758;
    font-size:10px;
    font-weight:800;
}
@media(max-width:760px){
    .duplicate-recycle-modal{padding:10px}
    .duplicate-recycle-panel{width:100%;height:94vh;border-radius:14px}
    .duplicate-recycle-header{padding:16px}
    .duplicate-recycle-tools{align-items:stretch;flex-wrap:wrap}
    .duplicate-recycle-bulk-actions,.duplicate-recycle-filter-row{width:100%}
    .duplicate-recycle-search-field,.duplicate-recycle-filter-row .select-control{min-width:0;flex:1 1 100%}
    .duplicate-recycle-summary{width:100%;margin-left:0;text-align:center}
    .duplicate-recycle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:11px}
    .duplicate-recycle-image-wrap{aspect-ratio:4/5;padding:7px}
    .duplicate-recycle-footer{grid-template-columns:1fr 1fr}
    .duplicate-recycle-footer>div{grid-column:1/-1;grid-row:1}
    .duplicate-recycle-footer .btn{width:100%}
}

.market-compose-dialog{
    overflow-y:auto;
}
.market-offer-options-panel{
    width:100%;
    margin-top:4px;
    padding:10px;
    border:1px solid #2d3129;
    border-radius:12px;
    background:#0b0e0a;
}
.market-offer-options-panel[hidden]{display:none!important}
.market-offer-options-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-bottom:8px;
}
.market-offer-options-heading span{
    color:#8f875f;
    font-size:8px;
    font-weight:900;
    letter-spacing:1.1px;
}
.market-offer-options-heading strong{
    color:#d8c477;
    font-size:10px;
}
.market-offer-options-list{
    display:flex;
    flex-direction:column;
    gap:7px;
    max-height:180px;
    overflow:auto;
}
.market-offer-options-empty{
    margin:0;
    padding:8px 4px;
    color:#6f756b;
    font-size:10px;
    text-align:center;
}
.market-offer-option-row{
    min-width:0;
    display:grid;
    grid-template-columns:64px minmax(0,1fr) 30px;
    gap:9px;
    align-items:center;
    padding:7px;
    border:1px solid #30342b;
    border-radius:10px;
    background:#11140f;
}
.market-offer-option-images{
    width:64px;
    height:54px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:3px;
    overflow:hidden;
    border-radius:7px;
    background:#080a07;
}
.market-offer-option-images img{
    display:block;
    max-width:100%;
    max-height:100%;
    object-fit:contain;
}
.market-offer-option-images.is-double img{
    width:30px;
    height:50px;
}
.market-offer-option-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:2px;
}
.market-offer-option-copy small{
    color:#8f7740;
    font-size:7px;
    font-weight:900;
    letter-spacing:.8px;
}
.market-offer-option-copy strong{
    overflow:hidden;
    color:#e7e1d2;
    font-size:10px;
    line-height:1.2;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.market-offer-option-copy span{
    color:#7e8478;
    font-size:8px;
}
.market-offer-option-remove{
    width:28px;
    height:28px;
    display:grid;
    place-items:center;
    border:1px solid #4a372f;
    border-radius:8px;
    background:#18110f;
    color:#c88f7b;
    font-size:18px;
    cursor:pointer;
}
.market-offer-options-actions{
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:7px;
    margin-top:8px;
}
.market-offer-options-actions .btn{
    min-height:34px;
    padding:7px 10px;
    font-size:9px;
}
.market-detail-options{
    margin-top:14px;
    padding:10px;
    border:1px solid #30342a;
    border-radius:12px;
    background:#0b0e0a;
}
.market-detail-options[hidden]{display:none!important}
.market-detail-options-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:8px;
}
.market-detail-options-head span{
    color:#908258;
    font-size:8px;
    font-weight:900;
    letter-spacing:1px;
}
.market-detail-options-head strong{
    color:#dcc77d;
    font-size:10px;
}
.market-detail-options-list{
    display:flex;
    gap:8px;
    overflow-x:auto;
    padding-bottom:2px;
}
.market-detail-option-button{
    min-width:170px;
    max-width:220px;
    display:grid;
    grid-template-columns:54px minmax(0,1fr);
    gap:8px;
    align-items:center;
    padding:7px;
    border:1px solid #30342b;
    border-radius:10px;
    background:#11140f;
    color:#c7cabc;
    text-align:left;
    cursor:pointer;
}
.market-detail-option-button.active{
    border-color:#a58a45;
    background:#1a190f;
    box-shadow:0 0 0 1px rgba(197,164,75,.16) inset;
}
.market-detail-option-thumbs{
    width:54px;
    height:48px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:2px;
    overflow:hidden;
    border-radius:7px;
    background:#080a07;
}
.market-detail-option-thumbs img{
    display:block;
    max-width:100%;
    max-height:100%;
    object-fit:contain;
}
.market-detail-option-thumbs.is-double img{
    width:25px;
    height:44px;
}
.market-detail-option-text{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:2px;
}
.market-detail-option-text small{
    color:#8e7b47;
    font-size:7px;
    font-weight:900;
    letter-spacing:.7px;
}
.market-detail-option-text strong{
    overflow:hidden;
    color:#e5dfd0;
    font-size:9px;
    line-height:1.2;
    text-overflow:ellipsis;
    white-space:nowrap;
}
@media(max-width:820px){
    .market-offer-options-panel{width:min(360px,100%);margin-left:auto;margin-right:auto}
    .market-detail-options{width:min(360px,100%);margin-left:auto;margin-right:auto}
    .market-detail-option-button{min-width:155px}
}


.catalog-server-toolbar{
    grid-template-columns:minmax(360px,1fr) 190px 240px 220px;
    align-items:center;
}
.catalog-server-toolbar .select-control{
    min-width:0;
    width:100%;
}
.catalog-server-toolbar .search-field{
    padding-left:8px;
}
.catalog-search-submit{
    width:30px;
    height:30px;
    flex:0 0 30px;
    display:grid;
    place-items:center;
    padding:0;
    border:0;
    border-radius:8px;
    background:transparent;
    color:#777d72;
    cursor:pointer;
    transition:color .16s ease,background .16s ease;
}
.catalog-search-submit:hover,
.catalog-search-submit:focus-visible{
    color:#d2b75e;
    background:rgba(200,173,106,.08);
    outline:none;
}
.catalog-search-submit svg{
    width:16px;
    height:16px;
    fill:none;
    stroke:currentColor;
    stroke-width:1.8;
    stroke-linecap:round;
}
.friend-row{
    grid-template-columns:auto minmax(0,1fr) auto auto auto;
}
.friend-message-link{
    min-width:42px;
    width:42px;
    height:42px;
    padding:0;
    display:grid;
    place-items:center;
}
.friend-message-link svg{
    width:18px;
    height:18px;
}
.remove-friend{
    justify-self:end;
}
@media(min-width:901px){
    .messaging-shell{
        height:clamp(720px,calc(100vh - 150px),920px);
    }
}
@media(max-width:1120px){
    .catalog-server-toolbar{
        grid-template-columns:minmax(280px,1fr) 175px 220px 205px;
    }
}
@media(max-width:980px){
    .catalog-server-toolbar{
        grid-template-columns:1fr 1fr;
    }
    .catalog-server-toolbar .search-field{
        grid-column:1/-1;
    }
}
@media(max-width:760px){
    .friend-row{
        grid-template-columns:auto minmax(0,1fr) auto;
    }
    .friend-row .friend-message-link,
    .friend-row .start-friend-trade{
        grid-row:2;
    }
    .friend-row .friend-message-link{
        grid-column:2;
        justify-self:start;
    }
    .friend-row .start-friend-trade{
        grid-column:3;
        justify-self:end;
    }
    .friend-row .remove-friend{
        grid-column:3;
        grid-row:1;
        justify-self:end;
    }
}
@media(max-width:600px){
    .catalog-server-toolbar{
        grid-template-columns:1fr;
    }
    .catalog-server-toolbar .search-field{
        grid-column:auto;
    }
}

.catalog-server-toolbar{
    grid-template-columns:minmax(300px,620px) minmax(220px,1fr) minmax(270px,1.2fr) minmax(235px,1fr);
}
.catalog-server-toolbar .search-field{
    max-width:620px;
}
.catalog-server-toolbar .select-control{
    padding-left:14px;
    padding-right:38px;
}

.trade-offer-row-visual{
    display:grid;
    grid-template-columns:minmax(125px,.7fr) minmax(250px,1.45fr) auto;
    align-items:center;
    gap:13px;
}
.trade-offer-meta{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:3px;
}
.trade-offer-meta strong,
.trade-offer-meta span{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.trade-offer-preview{
    min-width:0;
    display:grid;
    grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);
    gap:7px;
    align-items:center;
}
.trade-offer-mini-card{
    position:relative;
    min-width:0;
    padding:7px;
    border:1px solid #34382e;
    border-radius:10px;
    background:#0a0d09;
    overflow:hidden;
}
.trade-offer-mini-card img{
    display:block;
    width:100%;
    height:112px;
    object-fit:contain;
    border-radius:7px;
    background:#080a07;
}
.trade-offer-mini-card .rarity-badge{
    top:10px;
    right:10px;
}
.trade-offer-mini-card>strong{
    display:block;
    margin-top:6px;
    min-height:24px;
    color:#d9d3c5;
    font:600 10px/1.2 Georgia,serif;
    text-align:center;
    overflow:hidden;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
}
.trade-offer-preview-arrow{
    display:grid;
    place-items:center;
    color:#b89a50;
    font-size:22px;
}
.trade-offer-row-visual>.trade-offer-actions{
    justify-self:end;
}
.trade-offer-row-visual>.friend-trade-action{
    justify-self:end;
}

@media(min-width:1121px){
    .catalog-server-toolbar{
        grid-template-columns:minmax(300px,620px) minmax(220px,1fr) minmax(270px,1.2fr) minmax(235px,1fr);
    }
}
@media(min-width:981px) and (max-width:1120px){
    .catalog-server-toolbar{
        grid-template-columns:minmax(260px,1fr) minmax(185px,.8fr) minmax(230px,1fr) minmax(210px,.9fr);
    }
}
@media(min-width:901px){
    .messaging-shell{
        height:clamp(780px,calc(100vh - 105px),1020px);
    }
    .messaging-conversations{
        display:flex;
        flex-direction:column;
        min-height:0;
    }
    .messaging-conversation-list{
        flex:1;
        min-height:0;
        overflow:auto;
    }
    .messaging-thread-panel{
        min-height:0;
    }
    .messaging-thread{
        height:auto;
        min-height:0;
    }
}
@media(max-width:720px){
    .trade-offer-row-visual{
        grid-template-columns:1fr;
        align-items:stretch;
    }
    .trade-offer-preview{
        width:100%;
    }
    .trade-offer-row-visual>.trade-offer-actions,
    .trade-offer-row-visual>.friend-trade-action{
        justify-self:stretch;
    }
    .trade-offer-row-visual>.friend-trade-action{
        width:100%;
    }
}

@media(min-width:1280px){
    .collection-toolbar.catalog-server-toolbar{
        grid-template-columns:minmax(420px,1fr) 210px 270px 235px!important;
        width:100%;
    }
    .collection-toolbar.catalog-server-toolbar .search-field{
        width:100%;
        max-width:none;
    }
}
@media(min-width:981px) and (max-width:1279px){
    .collection-toolbar.catalog-server-toolbar{
        grid-template-columns:minmax(250px,1fr) 180px 220px 200px!important;
    }
}
.collection-toolbar.catalog-server-toolbar .select-control{
    min-width:0;
    width:100%;
    font-size:13px;
}
.trade-history-panel{
    margin-top:18px;
    border:1px solid #292c24;
    border-radius:14px;
    background:linear-gradient(145deg,#11130f,#0c0e0b);
    padding:18px;
}
.trade-history-list{
    display:grid;
    gap:10px;
}
.trade-history-row{
    display:grid;
    grid-template-columns:minmax(190px,.7fr) minmax(340px,1.45fr);
    align-items:center;
    gap:14px;
    padding:11px;
    border:1px solid #292d25;
    border-radius:12px;
    background:#0d100c;
}
.trade-history-meta{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:4px;
}
.trade-history-meta>strong{
    overflow:hidden;
    color:#e1dccf;
    font:600 14px Georgia,serif;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.trade-history-meta>small{
    color:#747a70;
    font-size:9px;
    line-height:1.4;
}
.trade-history-topline{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:6px;
}
.trade-history-status,
.trade-history-source{
    display:inline-flex;
    align-items:center;
    min-height:20px;
    padding:0 7px;
    border:1px solid #3b3f34;
    border-radius:999px;
    color:#a5aa9f;
    font-size:8px;
    font-weight:900;
    letter-spacing:.6px;
    text-transform:uppercase;
}
.trade-history-status.status-accepted{
    border-color:rgba(105,151,91,.55);
    background:rgba(74,113,64,.13);
    color:#a9c79e;
}
.trade-history-status.status-rejected{
    border-color:rgba(156,83,73,.55);
    background:rgba(122,57,50,.13);
    color:#d29a91;
}
.trade-history-status.status-cancelled{
    border-color:rgba(128,124,108,.5);
    background:rgba(95,91,77,.12);
    color:#aaa594;
}
.trade-history-source{
    border-color:rgba(184,154,80,.4);
    color:#c7aa62;
}
.trade-history-preview{
    width:min(100%,560px);
    justify-self:end;
}
.trade-history-preview .trade-offer-mini-card img{
    height:92px;
}
@media(max-width:760px){
    .trade-history-row{
        grid-template-columns:1fr;
    }
    .trade-history-preview{
        width:100%;
        justify-self:stretch;
    }
}


.community-chat-typing{
    min-height:30px;
    display:flex;
    align-items:center;
    gap:8px;
    padding:5px 10px 0;
    color:#918d80;
    font-size:10px;
    opacity:0;
    visibility:hidden;
    transition:opacity .15s ease;
}
.community-chat-typing.is-visible{
    opacity:1;
    visibility:visible;
}


.messaging-send-form textarea{
    text-align:left;
    padding:17px 12px;
    line-height:22px;
}
.messaging-send-form textarea::placeholder{
    text-align:left;
}


.friends-card-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
    gap:14px;
}
.friend-profile-card{
    position:relative;
    min-width:0;
    overflow:hidden;
    border:1px solid #292d25;
    border-radius:16px;
    background:#0e110d;
    transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.friend-profile-card:hover,
.friend-profile-card:focus-within{
    border-color:#59523b;
    transform:translateY(-2px);
    box-shadow:0 16px 34px rgba(0,0,0,.28);
}
.friend-profile-visual{
    position:relative;
    aspect-ratio:1/1;
    display:grid;
    place-items:center;
    overflow:hidden;
    background:radial-gradient(circle at 50% 35%,#252a21 0,#12150f 58%,#090b08 100%);
}
.friend-profile-avatar{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.friend-profile-avatar-fallback{
    display:grid;
    place-items:center;
    font-family:var(--serif);
    font-size:78px;
    color:#d1bc78;
}
.friend-card-remove{
    position:absolute;
    z-index:6;
    top:9px;
    right:9px;
    width:30px;
    height:30px;
    display:grid;
    place-items:center;
    border:1px solid rgba(216,76,76,.55);
    border-radius:9px;
    background:rgba(52,13,13,.9);
    color:#ff7474;
    font-size:21px;
    line-height:1;
    cursor:pointer;
    box-shadow:0 4px 12px rgba(0,0,0,.35);
}
.friend-card-remove:hover{
    background:#681d1d;
    color:#fff;
}
.friend-profile-card-body{
    padding:13px;
}
.friend-profile-name{
    display:block;
    overflow:hidden;
    color:#e4dfd2;
    font-family:var(--serif);
    font-size:16px;
    font-weight:800;
    text-decoration:none;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.friend-profile-name:hover{color:#e6c86e}
.friend-profile-card-body>small{
    display:block;
    margin-top:3px;
    color:#777c72;
}
.friend-profile-actions{
    display:grid;
    grid-template-columns:44px 1fr;
    gap:8px;
    margin-top:12px;
}
.friend-profile-actions .friend-message-link{
    width:44px;
    min-width:44px;
    height:40px;
}
.friend-profile-actions .start-friend-trade{
    width:100%;
}
.friend-profile-hover{
    position:absolute;
    z-index:4;
    inset:0;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:18px 14px 14px;
    background:linear-gradient(180deg,rgba(6,8,6,.25),rgba(6,8,6,.94) 52%,rgba(6,8,6,.98));
    opacity:0;
    visibility:hidden;
    transform:translateY(8px);
    transition:opacity .18s ease,visibility .18s ease,transform .18s ease;
    pointer-events:none;
}
.friend-profile-card:hover .friend-profile-hover,
.friend-profile-card:focus-within .friend-profile-hover{
    opacity:1;
    visibility:visible;
    transform:none;
}
.friend-profile-hover>small{
    color:#9f8f5a;
    font-size:9px;
    font-weight:900;
    letter-spacing:1.1px;
}
.friend-profile-hover>strong{
    margin-top:3px;
    color:#f0ebde;
    font-family:var(--serif);
    font-size:20px;
}
.friend-profile-hover>span,
.friend-profile-hover>p{
    margin:2px 0 0;
    color:#989d91;
    font-size:10px;
}
.friend-hover-stats{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:6px;
    margin-top:12px;
}
.friend-hover-stats div{
    padding:7px 4px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:8px;
    background:rgba(255,255,255,.025);
    text-align:center;
}
.friend-hover-stats b{
    display:block;
    color:#e4cc7a;
    font-size:13px;
}
.friend-hover-stats span{
    color:#8e9388;
    font-size:8px;
    text-transform:uppercase;
}
.friend-hover-showcase{
    display:flex;
    gap:5px;
    margin-top:10px;
}
.friend-hover-showcase img{
    width:36px;
    height:48px;
    border:1px solid #44483e;
    border-radius:5px;
    object-fit:contain;
    background:#090b08;
}
.community-chat-user-trigger{
    appearance:none;
    border:0;
    padding:0;
    background:transparent;
    color:#dcd7cb;
    font:inherit;
    font-weight:800;
    cursor:pointer;
}
.community-chat-user-trigger:hover,
.community-chat-user-trigger:focus-visible{
    color:#d8b95c;
    text-decoration:underline;
    outline:none;
}
.community-user-menu{
    position:fixed;
    z-index:10050;
    width:min(250px,calc(100vw - 24px));
    overflow:hidden;
    border:1px solid #393d33;
    border-radius:12px;
    background:#10130f;
    box-shadow:0 18px 46px rgba(0,0,0,.55);
    opacity:0;
    transform:translateY(-4px) scale(.98);
    transform-origin:top left;
    transition:opacity .12s ease,transform .12s ease;
}
.community-user-menu.is-visible{
    opacity:1;
    transform:none;
}
.community-user-menu-head{
    display:flex;
    flex-direction:column;
    gap:2px;
    padding:11px 12px;
    border-bottom:1px solid #292d25;
    background:#151812;
}
.community-user-menu-head strong{
    overflow:hidden;
    color:#e8e3d7;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.community-user-menu-head small{
    color:#777d72;
    font-size:9px;
    text-transform:uppercase;
    letter-spacing:.8px;
}
.community-user-menu>button{
    width:100%;
    display:flex;
    align-items:center;
    gap:9px;
    padding:10px 12px;
    border:0;
    border-bottom:1px solid rgba(255,255,255,.035);
    background:transparent;
    color:#c5c1b7;
    font:inherit;
    font-size:11px;
    text-align:left;
    cursor:pointer;
}
.community-user-menu>button:last-child{border-bottom:0}
.community-user-menu>button span{
    width:18px;
    color:#bba25b;
    font-weight:900;
    text-align:center;
}
.community-user-menu>button:hover,
.community-user-menu>button:focus-visible{
    background:#1b1f18;
    color:#f0eadb;
    outline:none;
}
.community-user-menu>button:disabled{
    opacity:.45;
    cursor:wait;
}
.public-profile-actions{
    margin-left:auto;
    display:flex;
    gap:8px;
    flex-wrap:wrap;
    justify-content:flex-end;
}
.public-profile-actions .btn{
    display:inline-flex;
    align-items:center;
    gap:7px;
}
.public-profile-actions svg{
    width:16px;
    height:16px;
}
.public-showcase-card,
.public-showcase-empty{
    cursor:default;
}
@media(max-width:760px){
    .friends-card-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:10px;
    }
    .friend-profile-card-body{padding:10px}
    .friend-profile-name{font-size:14px}
    .friend-hover-showcase img{width:28px;height:38px}
    .friend-hover-stats{gap:4px}
    .friend-profile-actions{grid-template-columns:40px 1fr}
    .public-profile-actions{
        width:100%;
        margin-left:0;
        justify-content:flex-start;
    }
}
@media(max-width:480px){
    .friends-card-grid{grid-template-columns:1fr}
}


.friend-trade-help{
    margin:4px 0 0;
    color:#878c81;
    font-size:11px;
}
.friend-trade-help strong{color:#d8c27a}
.trade-bundle-composer{
    grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);
    align-items:stretch;
}
.trade-bundle-side{
    min-width:0;
    padding:12px;
    border:1px solid #292d25;
    border-radius:15px;
    background:#0b0e0a;
}
.trade-bundle-heading{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    margin-bottom:10px;
}
.trade-bundle-heading small{
    color:#8d7845;
    font-size:9px;
    font-weight:900;
    letter-spacing:1.1px;
}
.trade-bundle-heading strong{
    color:#a8ad9f;
    font-size:10px;
}
.trade-bundle-list{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:7px;
    min-height:0;
}
.trade-bundle-card{
    position:relative;
    min-width:0;
    padding:6px;
    border:1px solid #34382e;
    border-radius:10px;
    background:#0e110d;
    color:#d9d3c5;
    cursor:pointer;
    overflow:hidden;
}
.trade-bundle-card:hover{
    border-color:#a44848;
    background:#17110f;
}
.trade-bundle-card img{
    display:block;
    width:100%;
    height:112px;
    object-fit:contain;
    border-radius:6px;
    background:#080a07;
}
.trade-bundle-card .rarity-badge{
    top:8px;
    right:8px;
}
.trade-bundle-card strong{
    display:-webkit-box;
    min-height:26px;
    margin-top:6px;
    overflow:hidden;
    color:#d9d3c5;
    font:600 10px/1.25 Georgia,serif;
    text-align:center;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
}
.trade-bundle-card small{
    display:block;
    overflow:hidden;
    color:#6f756b;
    font-size:8px;
    text-align:center;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.trade-bundle-remove{
    position:absolute;
    top:5px;
    left:5px;
    width:20px;
    height:20px;
    display:grid;
    place-items:center;
    border-radius:6px;
    background:rgba(87,24,24,.92);
    color:#ff8686;
    font-size:15px;
    line-height:1;
}
.trade-card-slot.trade-bundle-add{
    width:100%;
    min-height:82px;
    margin-top:9px;
    padding:9px;
}
.trade-card-slot.trade-bundle-add>span{font-size:27px}
.trade-card-slot.trade-bundle-add strong{font-size:12px}
.trade-offer-bundle-preview,
.private-trade-bundle-layout{
    grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);
}
.trade-offer-mini-group,
.private-trade-group-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(68px,1fr));
    gap:6px;
    min-width:0;
}
.trade-offer-mini-group .trade-offer-mini-card img{
    height:92px;
}
.trade-offer-row-bundle{
    align-items:center;
}
.private-trade-group{
    min-width:0;
    padding:8px;
    border:1px solid #292d25;
    border-radius:11px;
    background:rgba(8,10,7,.5);
}
.private-trade-group>small{
    display:block;
    margin-bottom:7px;
    color:#8d917f;
    font-size:8px;
    font-weight:900;
    letter-spacing:1px;
}
.private-trade-group-grid .private-trade-card{
    padding:6px;
}
.private-trade-group-grid .private-trade-card>small:empty{display:none}
.private-trade-group-grid .private-trade-card img{
    height:118px;
}
.private-trade-group-grid .private-trade-card>strong{
    min-height:27px;
    font-size:10px;
}
@media(max-width:900px){
    .trade-bundle-composer{grid-template-columns:1fr}
    .trade-bundle-composer>.trade-double-arrow{transform:rotate(90deg)}
    .trade-bundle-list{grid-template-columns:repeat(3,minmax(0,1fr))}
    .trade-offer-bundle-preview,.private-trade-bundle-layout{grid-template-columns:1fr}
    .trade-offer-bundle-preview>.trade-offer-preview-arrow,.private-trade-bundle-layout>.private-trade-arrow{transform:rotate(90deg)}
}
@media(max-width:560px){
    .trade-bundle-list{grid-template-columns:repeat(2,minmax(0,1fr))}
    .trade-offer-mini-group,.private-trade-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Gracebound 0.2.0 — performance */
.wheel-segment-token{
    width:48px;
    height:48px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.28);
    border-radius:10px;
    background:rgba(10,12,9,.48);
    box-shadow:0 3px 8px rgba(0,0,0,.24);
    color:#fff7dc;
    font-size:12px;
    font-weight:950;
    letter-spacing:.35px;
}
.wheel-token-booster,.wheel-token-mega_booster{font-size:9px;letter-spacing:.6px}
.lucky-wheel{
    contain:layout paint style;
    backface-visibility:hidden;
    transform:rotate(0deg) translateZ(0);
}
.lucky-wheel.is-spinning{
    will-change:transform;
    box-shadow:0 0 0 2px #2c281a,0 12px 34px rgba(0,0,0,.36),inset 0 0 30px rgba(0,0,0,.25);
}
body.wheel-is-spinning .ambient{visibility:hidden}
body.wheel-is-spinning .sidebar{backdrop-filter:none}
body.wheel-is-spinning .lucky-wheel-pointer{filter:none}
.wheel-choice-grid .collection-card,
.wheel-choice-grid .collection-card:after{animation:none!important}
.card-grid > .collection-card{
    content-visibility:auto;
    contain:layout paint style;
    contain-intrinsic-size:340px;
}
@media(max-width:720px){
    .wheel-segment-token{width:34px;height:34px;border-radius:7px;font-size:9px}
    .wheel-token-booster,.wheel-token-mega_booster{font-size:7px}
}

.collection-card{will-change:auto}
.collection-card:hover{will-change:transform}

.wheel-choice-art.is-deferred{
    opacity:.12;
    background:linear-gradient(135deg,rgba(255,255,255,.035),rgba(255,255,255,.01));
}
.wheel-choice-art.is-deferred.is-loaded{opacity:1;transition:opacity .16s ease}
.card-grid > .collection-card:hover,
.card-grid > .collection-card:focus-within{
    content-visibility:visible;
    contain:none;
}

/* Gracebound 0.2.1 — succès débloqués plus visibles */
.achievement{
    position:relative;
    overflow:hidden;
    transition:border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}
.achievement.unlocked{
    border-color:rgba(232,199,111,.55);
    background:
        radial-gradient(circle at top left, rgba(255,231,160,.16), transparent 34%),
        radial-gradient(circle at 88% 12%, rgba(255,214,102,.12), transparent 28%),
        linear-gradient(120deg, rgba(200,173,106,.16), rgba(88,68,24,.16) 22%, #15140f 62%, #121510 100%);
    box-shadow:
        0 0 0 1px rgba(242,208,118,.12),
        0 0 24px rgba(214,175,74,.14),
        0 12px 24px rgba(0,0,0,.22),
        inset 0 0 24px rgba(229,191,92,.08);
}
.achievement.unlocked::before{
    content:"";
    position:absolute;
    inset:-1px;
    border-radius:inherit;
    pointer-events:none;
    background:linear-gradient(135deg, rgba(255,243,201,.08), transparent 30%, transparent 72%, rgba(255,221,132,.1));
    opacity:.9;
}
.achievement.unlocked::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(90deg, transparent, rgba(255,236,179,.07), transparent);
    opacity:.65;
}
.achievement.unlocked:hover{
    transform:translateY(-1px);
    box-shadow:
        0 0 0 1px rgba(242,208,118,.18),
        0 0 34px rgba(214,175,74,.2),
        0 16px 26px rgba(0,0,0,.24),
        inset 0 0 28px rgba(229,191,92,.11);
}
.achievement.unlocked .achievement-icon{
    color:#f2d481;
    border-color:#8b7240;
    background:radial-gradient(circle at 35% 35%, rgba(255,241,196,.18), rgba(43,35,18,.92) 55%, #19150f 100%);
    box-shadow:0 0 0 1px rgba(255,220,124,.08), 0 0 18px rgba(229,191,92,.2), inset 0 0 20px rgba(255,225,134,.08);
    text-shadow:0 0 10px rgba(255,224,136,.28);
}
.achievement.unlocked h3,
.achievement.unlocked p,
.achievement.unlocked>small{
    position:relative;
    z-index:1;
}
.achievement.unlocked h3{
    color:#f4e6ba;
}
.achievement.unlocked p{
    color:#d4c6a0;
}
.achievement.unlocked>small{
    color:#dec06f;
    font-weight:800;
}
.achievement.locked{
    opacity:.84;
}


/* Gracebound — suppression locale des conversations */
.messaging-conversation-row{
    min-width:0;
    display:grid;
    grid-template-columns:minmax(0,1fr) 30px;
    gap:3px;
    align-items:center;
}
.messaging-conversation-row .messaging-conversation{width:100%}
.messaging-conversation-delete{
    width:28px;
    height:28px;
    display:grid;
    place-items:center;
    padding:0;
    border:1px solid transparent;
    border-radius:8px;
    background:transparent;
    color:#656a61;
    font:500 20px/1 Arial,sans-serif;
    cursor:pointer;
    opacity:.58;
    transition:opacity .15s ease,color .15s ease,border-color .15s ease,background .15s ease;
}
.messaging-conversation-row:hover .messaging-conversation-delete,
.messaging-conversation-delete:focus-visible{opacity:1}
.messaging-conversation-delete:hover{
    color:#efaaa0;
    border-color:rgba(197,91,76,.35);
    background:rgba(157,58,45,.12);
}
.messaging-conversation-delete:disabled{opacity:.28;cursor:wait}

/* Gracebound — toast de succès */
.achievement-toast-stack{
    position:fixed;
    right:22px;
    bottom:22px;
    z-index:220;
    width:min(390px,calc(100vw - 28px));
    display:flex;
    flex-direction:column;
    gap:10px;
    pointer-events:none;
}
.achievement-toast{
    position:relative;
    display:grid;
    grid-template-columns:52px minmax(0,1fr) 24px;
    gap:12px;
    align-items:center;
    min-height:84px;
    padding:13px 12px 13px 14px;
    border:1px solid rgba(239,203,112,.6);
    border-radius:14px;
    background:
        radial-gradient(circle at 14% 15%,rgba(255,232,158,.2),transparent 34%),
        linear-gradient(135deg,rgba(43,36,19,.98),rgba(16,18,14,.98) 62%);
    box-shadow:0 0 30px rgba(212,170,65,.2),0 18px 45px rgba(0,0,0,.42),inset 0 0 28px rgba(231,191,87,.07);
    transform:translateX(28px) scale(.97);
    opacity:0;
    pointer-events:auto;
    overflow:hidden;
    transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .24s ease;
}
.achievement-toast::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(105deg,transparent 15%,rgba(255,242,201,.08) 38%,transparent 60%);
}
.achievement-toast.is-visible{transform:translateX(0) scale(1);opacity:1}
.achievement-toast.is-leaving{transform:translateX(25px) scale(.98);opacity:0}
.achievement-toast-icon{
    position:relative;
    z-index:1;
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    border-radius:50%;
    border:1px solid rgba(238,202,109,.62);
    background:radial-gradient(circle at 35% 30%,rgba(255,240,190,.2),rgba(55,43,19,.9) 58%,rgba(24,20,12,.98));
    color:#f2d47e;
    font:600 19px Georgia,serif;
    text-shadow:0 0 10px rgba(255,220,120,.28);
    box-shadow:0 0 18px rgba(224,183,76,.2),inset 0 0 16px rgba(255,224,132,.08);
}
.achievement-toast-copy{position:relative;z-index:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.achievement-toast-copy small{font-size:8px;font-weight:900;letter-spacing:1.55px;color:#bd9e55}
.achievement-toast-copy strong{font:600 15px Georgia,serif;color:#f1e3b7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.achievement-toast-copy span{font-size:10px;line-height:1.35;color:#a9a18c}
.achievement-toast-close{
    position:relative;
    z-index:2;
    align-self:start;
    width:24px;
    height:24px;
    border:0;
    background:transparent;
    color:#756f5f;
    cursor:pointer;
    font-size:18px;
    line-height:1;
}
.achievement-toast-close:hover{color:#dcc37d}
@media(max-width:760px){
    .achievement-toast-stack{right:14px;bottom:78px;width:calc(100vw - 28px)}
    .achievement-toast{grid-template-columns:44px minmax(0,1fr) 22px;min-height:76px}
    .achievement-toast-icon{width:44px;height:44px;font-size:16px}
}
@media(prefers-reduced-motion:reduce){
    .achievement-toast{transition:opacity .15s ease;transform:none}
    .achievement-toast.is-visible{transform:none}
    .achievement-toast.is-leaving{transform:none}
}


/* Gracebound 0.2.3 — profil No animation / ouverture ultra-rapide */
.no-animation-preference{border-color:rgba(200,173,106,.24);background:linear-gradient(120deg,rgba(200,173,106,.055),#10130e 42%)}
.quick-open-success{filter:brightness(1.18);box-shadow:0 0 0 2px rgba(220,190,105,.16),0 0 18px rgba(220,190,105,.12)!important}


/* Gracebound 0.2.4 — révélation ultra-rapide */
.opening-overlay.quick-reveal-mode .opening-pack{transition-duration:.12s,.08s}
.opening-overlay.quick-reveal-mode .reveal-card{transition-duration:.12s,.08s,.06s}
.opening-overlay.quick-reveal-mode .reveal-card .flip-inner{transition-duration:.11s}
.opening-overlay.quick-reveal-mode .reveal-instruction,
.opening-overlay.quick-reveal-mode .rarity-splash{transition-duration:.07s}
.opening-overlay.quick-reveal-mode .particle{display:none!important}
.opening-overlay.quick-reveal-mode .reveal-card.active{filter:drop-shadow(0 8px 14px rgba(0,0,0,.34))}


/* Gracebound 0.2.16 — demandes d'ami + annuaire membres */
.friend-requests-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0 20px}.friend-request-box{border:1px solid #2c3028;background:#10130f;border-radius:14px;padding:14px}.friend-request-box-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.friend-request-box-title strong{font-family:Georgia,serif;font-size:16px;font-weight:500}.friend-request-box-title span{min-width:24px;height:24px;padding:0 7px;border-radius:999px;display:grid;place-items:center;background:#1d211a;color:#c8ad6a;font-size:10px}.friend-request-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #22261f}.friend-request-row:first-of-type{border-top:0}.friend-request-row>img,.friend-request-avatar-fallback{width:38px;height:38px;border-radius:50%;object-fit:cover;border:1px solid #3d4236}.friend-request-avatar-fallback{display:grid;place-items:center;background:#191d17;color:#c8ad6a;font-family:Georgia,serif}.friend-request-row>div:nth-child(2){min-width:0}.friend-request-row strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.friend-request-row small{display:block;color:#74786e;font-size:9px;margin-top:2px}.friend-request-actions{display:flex;gap:7px}.friend-request-actions .btn{padding:8px 10px;font-size:9px}
.members-panel{border:1px solid #292d25;background:#11140f;border-radius:16px;padding:22px}.members-search-shell{border:1px solid #2b3027;background:#0d100c;border-radius:14px;padding:14px;margin-bottom:18px}.members-search-modes{display:flex;gap:7px;margin-bottom:10px}.members-search-mode{border:1px solid #30352b;background:#151914;color:#83887d;border-radius:999px;padding:8px 12px;font-size:9px;letter-spacing:.5px;cursor:pointer}.members-search-mode.active{border-color:#6d5e34;background:#211d12;color:#d7bd76}.members-search-input-wrap{position:relative}.members-search-input-wrap>span{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:#8e825d;font-size:18px;pointer-events:none}.members-search-input-wrap .select-control{width:100%;padding-left:38px}.members-search-shell>small{display:block;color:#686d63;font-size:9px;margin-top:8px}.members-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.member-card{border:1px solid #292e26;background:#0f120e;border-radius:14px;padding:14px;min-width:0}.member-card:hover{border-color:#444936;background:#121610}.member-card-top{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:10px}.member-avatar{width:46px;height:46px;border-radius:50%;object-fit:cover;border:1px solid #424738}.member-avatar-fallback{display:grid;place-items:center;background:#1a1e17;color:#c9ad69;font-family:Georgia,serif;font-size:18px}.member-identity{min-width:0}.member-identity strong,.member-identity small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-identity strong{font-size:13px}.member-identity small{font-size:9px;color:#72776c;margin-top:3px}.member-relation-badge{border:1px solid #373c31;border-radius:999px;padding:5px 7px;color:#80857a;font-size:7px;letter-spacing:.7px}.member-relation-badge.is-friend{border-color:#5b5235;color:#d3b96e}.member-relation-badge.is-pending{border-color:#394758;color:#8eb4d9}.member-relation-badge.is-incoming{border-color:#604a2f;color:#d7a866}.member-mini-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin:13px 0}.member-mini-stats span{border:1px solid #23271f;background:#151813;border-radius:9px;padding:8px;text-align:center;color:#70756b;font-size:8px;min-width:0;overflow:hidden;text-overflow:ellipsis}.member-mini-stats b{display:block;color:#c7cbbf;font-size:10px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-card-actions{display:flex;flex-wrap:wrap;gap:7px}.member-card-actions .btn{flex:1 1 auto;padding:8px 10px;font-size:9px}.member-card-search-results{min-height:120px}.member-card-search-status{color:#7b8075;font-size:10px;padding:8px 2px 14px}.member-card-result{display:grid;grid-template-columns:minmax(240px,320px) 1fr;gap:16px;border:1px solid #292e26;background:#0f120e;border-radius:14px;padding:13px;margin-bottom:11px}.member-card-result-card{display:grid;grid-template-columns:62px minmax(0,1fr);gap:11px;align-items:center}.member-card-result-card>img{width:62px;height:82px;object-fit:contain;border-radius:7px;background:#080a08}.member-card-result-card strong,.member-card-result-card small{display:block}.member-card-result-card strong{font-family:Georgia,serif;font-size:14px;margin:6px 0 3px}.member-card-result-card small{color:#70756b;font-size:9px}.member-card-result-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}.member-card-result-title strong{font-size:11px}.member-card-result-title small{font-size:8px;color:#6e7369}.member-card-owner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.member-card-owner{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:center;border:1px solid #252a22;background:#151914;border-radius:9px;padding:7px;text-decoration:none;color:inherit}.member-card-owner:hover{border-color:#4a4936}.member-card-owner img,.member-owner-avatar-fallback{width:34px;height:34px;border-radius:50%;object-fit:cover}.member-owner-avatar-fallback{display:grid;place-items:center;background:#20241d;color:#c8ad6a}.member-card-owner strong,.member-card-owner small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-card-owner strong{font-size:10px}.member-card-owner small{font-size:8px;color:#777c72;margin-top:2px}
@media(max-width:1050px){.members-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.member-card-result{grid-template-columns:1fr}.friend-requests-grid{grid-template-columns:1fr}}@media(max-width:680px){.members-directory-grid{grid-template-columns:1fr}.member-card-owner-grid{grid-template-columns:1fr}.friend-request-row{grid-template-columns:38px 1fr}.friend-request-actions{grid-column:2;justify-content:flex-start}.members-search-modes{flex-direction:column;align-items:stretch}.members-search-mode{text-align:left}}


/* Marché 0.2.17 — indique si la carte proposée est déjà dans la collection */
.market-owned-status-badge{
    position:absolute;
    right:9px;
    bottom:9px;
    z-index:7;
    padding:5px 8px;
    border:1px solid #3d4237;
    border-radius:999px;
    background:rgba(13,16,12,.94);
    color:#a5aaa0;
    font-size:9px;
    font-weight:900;
    letter-spacing:.45px;
    text-transform:uppercase;
    box-shadow:0 3px 12px rgba(0,0,0,.28);
}
.market-owned-status-badge.is-owned,
.market-detail-owned-badge.is-owned,
.market-option-owned-status.is-owned{
    border-color:#56734f;
    color:#a9d49c;
    background:rgba(22,38,21,.94);
}
.market-owned-status-badge.is-partial,
.market-option-owned-status.is-partial{
    border-color:#7a693d;
    color:#e0c979;
    background:rgba(39,33,18,.94);
}
.market-owned-status-badge.is-missing,
.market-detail-owned-badge.is-missing,
.market-option-owned-status.is-missing{
    border-color:#684a44;
    color:#d79c90;
    background:rgba(39,23,20,.94);
}
.market-listing-offer-preview .market-possible-badge{
    left:9px;
    right:auto;
}
.market-detail-owned-badge{
    position:absolute;
    left:9px;
    bottom:9px;
    z-index:8;
    padding:5px 8px;
    border:1px solid #3d4237;
    border-radius:999px;
    background:rgba(13,16,12,.94);
    color:#a5aaa0;
    font-size:9px;
    font-weight:900;
    letter-spacing:.35px;
    text-transform:uppercase;
    box-shadow:0 3px 12px rgba(0,0,0,.3);
}
.market-option-owned-status{
    display:block;
    width:max-content;
    max-width:100%;
    margin-top:4px;
    padding:3px 6px;
    border:1px solid #3d4237;
    border-radius:999px;
    color:#a5aaa0;
    font-size:8px;
    font-style:normal;
    font-weight:900;
    letter-spacing:.35px;
    text-transform:uppercase;
}


/* Profil — arrêt automatique sur rareté */
.auto-stop-preference{border-color:rgba(200,173,106,.24);background:linear-gradient(120deg,rgba(200,173,106,.055),#10130e 42%)}
.profile-auto-stop-controls{display:flex;flex-direction:column;align-items:stretch;gap:9px;min-width:270px}
.profile-setting-switch-main{justify-content:flex-start}
.profile-rarity-checks{display:grid;grid-template-columns:1fr 1fr;gap:8px;transition:opacity .16s ease}
.profile-rarity-checks.is-disabled{opacity:.45}
.profile-rarity-check{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid #34372e;border-radius:10px;background:#151812;color:#d9d3c5;font-weight:700;cursor:pointer}
.profile-rarity-check input{width:17px;height:17px;accent-color:#b7984d}
.profile-rarity-check strong{display:inline-flex;align-items:center;justify-content:center;min-width:26px;padding:2px 5px;margin-right:3px;border-radius:999px;background:#22261d;color:#d7bc70;font-size:10px;letter-spacing:.5px}
.profile-rarity-check.rarity-l strong{color:#ead78f}
.profile-auto-stop-hint{color:#777d72!important;letter-spacing:0!important;font-size:10px!important;text-transform:none}
@media(max-width:620px){.profile-auto-stop-controls{min-width:0;width:100%}.profile-rarity-checks{grid-template-columns:1fr}}

/* === Gracebound 0.2.29 · Progression / Carte fétiche / Sphérier === */
.profile-level-stat strong{color:var(--gold2)}
.profile-progression-panel,.favorite-card-panel,.talent-progression-hero,.talent-board-card,.talent-side-panel>div{border:1px solid #2b2f26;background:linear-gradient(180deg,rgba(20,23,18,.96),rgba(13,15,12,.96));border-radius:18px;box-shadow:var(--shadow)}
.profile-progression-panel{padding:22px 24px;margin:18px 0}.profile-progression-head{display:flex;justify-content:space-between;gap:18px;align-items:center}.profile-progression-head small,.favorite-card-copy>small,.talent-progression-hero small,.talent-side-panel>div>small{font-size:8px;letter-spacing:1.6px;color:#9a8756}.profile-progression-head h2,.favorite-card-copy h2,.talent-side-panel h3{font-family:Georgia,serif;font-weight:500;margin:5px 0 6px}.profile-progression-head p,.favorite-card-copy p,.talent-side-panel p{margin:0;color:#858980;font-size:11px;line-height:1.6}.profile-progression-meta{display:flex;justify-content:space-between;align-items:center;margin-top:9px;color:#74786f;font-size:10px}.profile-progression-meta strong{color:#d7c27e}
.talent-xp-bar{height:9px;background:#20231c;border:1px solid #2f3329;border-radius:999px;overflow:hidden;margin-top:14px}.talent-xp-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7b6a3f,#d9bb65 65%,#f0dea1);box-shadow:0 0 18px rgba(217,187,101,.35)}
.favorite-card-panel{padding:24px;margin:18px 0;display:grid;grid-template-columns:minmax(280px,1fr) minmax(340px,520px);gap:24px;align-items:center}.favorite-card-profile{margin:18px 0}.favorite-bonus-scale{display:flex;gap:7px;flex-wrap:wrap;margin-top:13px}.favorite-bonus-scale span{border:1px solid #39392f;background:#11130f;border-radius:999px;padding:6px 9px;font-size:9px;color:#b7b19d;font-weight:800}.favorite-card-slot{min-height:150px;border:1px dashed #3a3d32;border-radius:15px;background:rgba(8,10,8,.5);padding:14px;display:grid;grid-template-columns:96px 1fr auto;gap:14px;align-items:center;position:relative;overflow:hidden}.favorite-card-slot.is-filled{border-style:solid;border-color:rgba(200,173,106,.28)}.favorite-card-slot>img{width:96px;height:122px;object-fit:contain;border-radius:10px;background:#0b0d0a}.favorite-card-slot>div:not(.favorite-card-actions):not(.favorite-empty-mark){display:flex;flex-direction:column;align-items:flex-start;gap:4px}.favorite-card-slot strong{font-family:Georgia,serif;font-size:18px;font-weight:500}.favorite-card-slot small{font-size:9px;color:#73786e}.favorite-card-slot em{font-style:normal;font-size:9px;font-weight:900;letter-spacing:.7px;margin-top:6px}.favorite-active{color:#d9c171}.favorite-locked{color:#8a6d67}.favorite-empty-mark{width:74px;height:74px;border:1px solid rgba(200,173,106,.25);border-radius:50%;display:grid;place-items:center;color:#d3b86c;font-size:28px}.favorite-card-actions{display:flex;flex-direction:column;gap:8px}.favorite-card-actions .btn{height:38px;padding:0 13px;font-size:11px}
.talent-progression-hero{padding:20px 22px;margin-bottom:18px;display:grid;grid-template-columns:110px minmax(360px,1fr) 220px;gap:20px;align-items:center}.talent-level-orb{width:92px;height:92px;border:1px solid #5b5036;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle,rgba(200,173,106,.13),rgba(12,14,11,.9) 65%);box-shadow:0 0 34px rgba(200,173,106,.12)}.talent-level-orb small{letter-spacing:1.3px}.talent-level-orb strong{font-family:Georgia,serif;font-size:34px;line-height:1;color:#ead99d}.talent-level-orb span{font-size:9px;color:#6f7168}.talent-xp-heading{display:flex;justify-content:space-between;gap:22px}.talent-xp-heading>div{display:flex;flex-direction:column;gap:4px}.talent-xp-heading strong{font-size:12px;color:#d9d4c8}.talent-xp-panel p{margin:8px 0 0;color:#6f736a;font-size:9px}.talent-reset-button{height:54px;display:flex;flex-direction:column;gap:2px}.talent-reset-button small{font-size:9px;color:#968b6d;letter-spacing:.2px}
.talent-layout{display:grid;grid-template-columns:minmax(650px,1fr) 330px;gap:20px;align-items:start}.talent-board-card{padding:18px;min-width:0}.talent-board-heading{padding:3px 5px 0}.talent-board-scroll{height:min(74vh,820px);min-height:620px;overflow:auto;border:1px solid #24271f;border-radius:14px;background:radial-gradient(circle at center,rgba(200,173,106,.055),transparent 24%),linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px),#090b08;background-size:auto,44px 44px,44px 44px,auto;scrollbar-color:#494437 #11130f}.talent-board{width:1100px;height:1100px;position:relative;margin:55px auto}.talent-board:before,.talent-board:after{content:"";position:absolute;left:550px;top:550px;transform:translate(-50%,-50%);border:1px solid rgba(200,173,106,.07);border-radius:50%;pointer-events:none}.talent-board:before{width:610px;height:610px}.talent-board:after{width:940px;height:940px;border-color:rgba(200,173,106,.045)}.talent-connections{position:absolute;inset:0;width:1100px;height:1100px;pointer-events:none}.talent-connections line{stroke:#292d24;stroke-width:4;stroke-linecap:round}.talent-connections line.path-ready{stroke:#504b38}.talent-connections line.path-owned{stroke:#b49a59;filter:drop-shadow(0 0 5px rgba(200,173,106,.35))}
.talent-node{position:absolute;width:62px;height:62px;transform:translate(-50%,-50%);border-radius:50%;border:1px solid #383c31;background:#121510;color:#777c72;z-index:3;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.34);transition:.18s}.talent-node:hover{transform:translate(-50%,-50%) scale(1.08);z-index:5}.talent-node-core{position:absolute;inset:8px;border-radius:50%;display:grid;place-items:center;border:1px solid #30342a;background:#0c0e0b;font-size:17px}.talent-node-cost{position:absolute;right:-5px;top:-5px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#161912;border:1px solid #45483a;font-size:9px;font-weight:900;color:#a5a08e}.talent-node-label{position:absolute;left:50%;top:68px;transform:translateX(-50%);width:126px;text-align:center;font-size:8px;line-height:1.25;color:#74796f;text-shadow:0 2px 8px #000;pointer-events:none}.talent-node.is-available{border-color:#8b7748;color:#d9c57c;box-shadow:0 0 0 5px rgba(200,173,106,.05),0 0 24px rgba(200,173,106,.18)}.talent-node.is-available .talent-node-core{border-color:#8c794a;background:radial-gradient(circle,rgba(200,173,106,.18),#11130f 70%)}.talent-node.is-owned{border-color:#c7aa61;color:#f1dfa3;background:#1d1a11;box-shadow:0 0 30px rgba(200,173,106,.20)}.talent-node.is-owned .talent-node-core{border-color:#b99c55;background:radial-gradient(circle,#43391f,#15140e 72%)}.talent-node.is-owned .talent-node-label{color:#c7b57d}.talent-node.is-locked{opacity:.56}.talent-node.is-socket .talent-node-core{border-style:dashed}.talent-node.is-center{width:82px;height:82px;border-color:#d4b866;color:#f2dfa0;box-shadow:0 0 46px rgba(200,173,106,.26)}.talent-node.is-center .talent-node-core{font-size:27px}.talent-node.is-center .talent-node-label{top:88px;color:#d8c17f;font-weight:900}
.talent-side-panel{display:flex;flex-direction:column;gap:14px;position:sticky;top:24px}.talent-side-panel>div{padding:18px}.talent-detail-card h3,.talent-bonus-card h3,.socket-panel h3{font-size:20px}.talent-detail-card .btn{width:100%;margin-top:14px}.talent-detail-meta{display:inline-block;margin-top:7px;color:#b8aa83;font-weight:800;font-size:9px}.talent-bonus-list{display:flex;flex-direction:column;gap:8px;margin-top:12px}.talent-bonus-list>div{display:flex;justify-content:space-between;gap:12px;padding:9px 10px;background:#0f110e;border:1px solid #282b23;border-radius:9px;font-size:10px;color:#888d82}.talent-bonus-list strong{color:#d8c37d}.talent-balance-note{font-size:9px!important;margin-top:10px!important}.socket-list{display:flex;flex-direction:column;gap:8px;margin-top:12px;max-height:410px;overflow:auto;padding-right:3px}.socket-slot{width:100%;min-height:66px;border:1px solid #30342a;border-radius:11px;background:#10120f;color:#d7d3c7;display:flex;align-items:center;gap:10px;padding:8px;text-align:left;cursor:pointer}.socket-slot:hover{border-color:#5b543d;background:#151711}.socket-slot img{width:48px;height:52px;object-fit:contain;border-radius:7px;background:#090b08}.socket-slot>span:not(.socket-plus){display:flex;flex-direction:column;min-width:0}.socket-slot strong{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.socket-slot small{font-size:8px;color:#777c72;margin-top:3px}.socket-plus{width:48px;height:48px;border:1px dashed #45493c;border-radius:8px;display:grid;place-items:center;color:#a79360;font-size:20px;flex:0 0 auto}
.talent-card-picker{position:fixed;inset:0;z-index:110;display:none;align-items:center;justify-content:center}.talent-card-picker.visible{display:flex}.talent-card-picker .modal-backdrop{position:absolute;inset:0;border:0;background:rgba(3,4,3,.82);backdrop-filter:blur(7px)}.talent-card-picker-dialog{position:relative;width:min(1060px,94vw);height:min(790px,90vh);border:1px solid #3b3d31;border-radius:18px;background:#10120f;box-shadow:0 34px 100px rgba(0,0,0,.72);padding:20px;display:flex;flex-direction:column}.talent-picker-info{min-height:20px;color:#7e8278;font-size:9px;margin:5px 0 8px}.talent-picker-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;overflow:auto;padding:4px 4px 18px}.talent-picker-card{min-width:0;border:1px solid #2e3228;background:#11130f;border-radius:11px;color:#ddd7c9;padding:8px;position:relative;text-align:left;cursor:pointer}.talent-picker-card:hover:not(:disabled){border-color:#6a5f43;transform:translateY(-2px)}.talent-picker-card img{width:100%;height:145px;object-fit:contain;background:#090b08;border-radius:8px;margin-bottom:7px}.talent-picker-card strong{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.talent-picker-card small{display:block;color:#70756c;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:3px}.talent-picker-card.is-disabled{opacity:.42;cursor:not-allowed}.talent-picker-disabled{position:absolute;left:7px;right:7px;bottom:38px;background:rgba(43,21,18,.92);border:1px solid rgba(190,100,72,.35);border-radius:7px;padding:5px;font-size:7px;color:#d69b84;text-align:center;z-index:4}.talent-picker-loading{grid-column:1/-1;padding:60px;text-align:center;color:#7d8178;font-size:11px}.talent-picker-loading.is-error{color:#d59a88}
.pack-mini-xp{margin-top:-2px;padding:0 2px 6px}.pack-mini-xp>div{height:5px;border-radius:999px;background:#24271f;overflow:hidden}.pack-mini-xp>div span{display:block;height:100%;background:linear-gradient(90deg,#806f44,#d1b565)}.pack-mini-xp small{display:block;text-align:right;color:#686d64;font-size:8px;margin-top:4px}.progression-line strong{color:#d7c27e}.favorite-target-tag{position:absolute;left:8px;top:36px;z-index:6;border:1px solid rgba(234,217,157,.55);background:rgba(51,43,23,.9);color:#ead99d;border-radius:999px;padding:4px 7px;font-size:7px;font-weight:900;letter-spacing:.7px}.favorite-destiny-toast{position:absolute;left:50%;top:8%;transform:translate(-50%,-20px);z-index:90;width:min(520px,88vw);border:1px solid rgba(234,217,157,.55);border-radius:15px;background:linear-gradient(135deg,rgba(45,38,21,.97),rgba(13,15,12,.98));box-shadow:0 24px 80px rgba(0,0,0,.7),0 0 42px rgba(200,173,106,.22);padding:16px 20px;display:flex;flex-direction:column;align-items:center;text-align:center;opacity:0;transition:.25s}.favorite-destiny-toast.show{opacity:1;transform:translate(-50%,0)}.favorite-destiny-toast small{color:#c8ad6a;letter-spacing:2px;font-size:8px}.favorite-destiny-toast strong{font-family:Georgia,serif;font-size:22px;color:#f1dfaa;margin:4px 0}.favorite-destiny-toast span{font-size:10px;color:#a9a28d}.gracebound-level-up .pack-mini-xp>div span{box-shadow:0 0 16px #e2c978}

@media(max-width:1350px){.talent-layout{grid-template-columns:1fr}.talent-side-panel{position:static;display:grid;grid-template-columns:repeat(3,1fr)}.talent-board-scroll{height:700px}.socket-list{max-height:310px}.talent-picker-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:900px){.talent-progression-hero{grid-template-columns:90px 1fr}.talent-reset-button{grid-column:1/-1}.favorite-card-panel{grid-template-columns:1fr}.talent-side-panel{grid-template-columns:1fr}.talent-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.favorite-card-slot{grid-template-columns:82px 1fr}.favorite-card-slot>img{width:82px;height:105px}.favorite-card-actions{grid-column:1/-1;flex-direction:row}.profile-progression-head{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.talent-progression-hero{grid-template-columns:1fr}.talent-level-orb{margin:auto}.talent-xp-heading{flex-direction:column;gap:10px}.talent-board-scroll{height:65vh;min-height:500px}.talent-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.talent-picker-card img{height:120px}.favorite-card-slot{grid-template-columns:1fr;text-align:center}.favorite-card-slot>img,.favorite-empty-mark{margin:auto}.favorite-card-slot>div:not(.favorite-card-actions):not(.favorite-empty-mark){align-items:center}.favorite-card-actions{justify-content:center}.profile-progression-meta{align-items:flex-start;flex-direction:column;gap:4px}}


/* === Gracebound 0.2.30 · Arbre de talents : zoom + visuels de nœuds === */
.talent-board-heading{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}
.talent-board-heading-actions{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.talent-board-heading-actions>span{color:#8c9085;font-size:10px;line-height:1.4}
.talent-zoom-controls{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid #2e3228;border-radius:999px;background:#0f110d;box-shadow:0 6px 18px rgba(0,0,0,.28)}
.talent-zoom-controls .icon-btn{width:30px;height:30px;border-radius:50%}
.talent-zoom-reset{height:30px;padding:0 10px;min-width:64px}
.talent-zoom-value{min-width:48px;text-align:center;font-size:10px;font-weight:800;color:#d5c182}
.talent-board-scroll{position:relative;overscroll-behavior:contain}
.talent-board-stage{position:relative;width:1100px;height:1100px;margin:55px auto}
.talent-board{margin:0;transform-origin:top left;will-change:transform}
.talent-node-core{overflow:hidden;background:#080a08}
.talent-node-core:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.45));pointer-events:none}
.talent-node-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%;filter:grayscale(1) saturate(.45) brightness(.6);opacity:.95;transition:filter .18s,opacity .18s,transform .18s}
.talent-node-glyph{position:absolute;right:1px;bottom:1px;width:20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:900;color:#f0e0a8;background:rgba(10,10,8,.82);border:1px solid rgba(201,173,106,.36);box-shadow:0 2px 8px rgba(0,0,0,.35);z-index:2}
.talent-node.is-center .talent-node-glyph{left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:28px;height:28px;font-size:18px}
.talent-node.is-owned .talent-node-image,.talent-node.is-available .talent-node-image,.talent-node.is-selected .talent-node-image,.talent-node:hover .talent-node-image{filter:none;opacity:1;transform:scale(1.04)}
.talent-node.is-selected{border-color:#d6c382;color:#f3e6bb;box-shadow:0 0 0 4px rgba(224,199,123,.12),0 0 28px rgba(224,199,123,.22)}
.talent-node.is-selected .talent-node-core{border-color:#af9456}
.talent-node.is-selected .talent-node-label{color:#dec98b}
.talent-node.is-locked .talent-node-image{opacity:.82}
@media(max-width:900px){.talent-board-heading-actions{justify-content:flex-start}.talent-zoom-controls{order:-1}}

/* === Gracebound 0.2.31 · Arbre plein écran / zoom molette / déplacement souris === */
body.talent-tree-page{overflow:hidden}
.talent-tree-page .main-content{height:100vh;overflow:hidden;padding:14px 16px 14px;max-width:none}
.talent-tree-page .page-header{display:none}
.talent-workspace{height:100%;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:14px;overflow:hidden}
.talent-board-card-full{height:100%;min-height:0;padding:0;overflow:hidden;display:flex;flex-direction:column;border:1px solid #2b2f26;background:linear-gradient(180deg,rgba(20,23,18,.96),rgba(13,15,12,.96));border-radius:18px;box-shadow:var(--shadow)}
.talent-tree-toolbar{height:62px;flex:0 0 62px;padding:10px 12px 9px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #282c24;background:linear-gradient(180deg,#151812,#10120f)}
.talent-tree-toolbar-copy{min-width:0;display:flex;flex-direction:column;gap:2px}
.talent-tree-toolbar-copy small{font-size:7px;letter-spacing:1.7px;color:#9e8955;font-weight:900}
.talent-tree-toolbar-copy strong{font-family:Georgia,serif;font-size:18px;font-weight:500;color:#e5dfcf}
.talent-tree-toolbar-copy span{font-size:8px;color:#777c72;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.talent-tree-page .talent-zoom-controls{flex:0 0 auto;padding:4px 7px;gap:6px}
.talent-tree-page .talent-zoom-controls .icon-btn{width:28px;height:28px}
.talent-tree-page .talent-zoom-reset{height:28px;min-width:56px;padding:0 8px;font-size:10px}
.talent-tree-page .talent-zoom-value{font-size:9px;min-width:42px}
.talent-tree-page .talent-board-scroll{height:auto!important;min-height:0!important;flex:1;overflow:auto;border:0;border-radius:0;cursor:grab;user-select:none;touch-action:none;scrollbar-width:none;background:radial-gradient(circle at center,rgba(200,173,106,.06),transparent 25%),linear-gradient(rgba(255,255,255,.014) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.012) 1px,transparent 1px),#090b08;background-size:auto,44px 44px,44px 44px,auto}
.talent-tree-page .talent-board-scroll::-webkit-scrollbar{display:none}
.talent-tree-page .talent-board-scroll.is-panning{cursor:grabbing}
.talent-tree-page .talent-board-stage{margin:34px;position:relative;flex:0 0 auto}
.talent-tree-page .talent-board{margin:0}
.talent-pan-hint{position:sticky;left:14px;top:12px;z-index:9;width:max-content;max-width:calc(100% - 28px);padding:7px 10px;border:1px solid rgba(200,173,106,.18);border-radius:999px;background:rgba(13,15,12,.82);backdrop-filter:blur(7px);color:#837b65;font-size:8px;letter-spacing:.25px;pointer-events:none;opacity:.72}

.talent-dashboard{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(118px,auto) auto auto minmax(112px,1fr) 46px;gap:8px;overflow:hidden}
.talent-dashboard-block{min-width:0;border:1px solid #2b2f26;background:linear-gradient(180deg,rgba(20,23,18,.97),rgba(13,15,12,.97));border-radius:13px;padding:11px 12px;box-shadow:0 13px 30px rgba(0,0,0,.26);overflow:hidden}
.talent-dashboard-block>small,.talent-dashboard-section-head small,.talent-progress-copy>small{display:block;color:#9a8756;font-size:7px;letter-spacing:1.45px;font-weight:900}
.talent-dashboard-title{display:flex;align-items:center;gap:11px}
.talent-level-mini{width:58px;height:58px;flex:0 0 58px;border:1px solid #5b5036;border-radius:50%;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto 1fr;place-content:center;text-align:center;background:radial-gradient(circle,rgba(200,173,106,.13),rgba(12,14,11,.9) 68%);padding:8px 7px}
.talent-level-mini>span{grid-column:1/-1;color:#8b805f;font-size:6px;letter-spacing:1.2px}
.talent-level-mini strong{font-family:Georgia,serif;font-size:24px;line-height:1;color:#ead99d;align-self:end}
.talent-level-mini small{font-size:7px;color:#696d64;align-self:end;margin-bottom:2px}
.talent-progress-copy{min-width:0;display:flex;flex-direction:column;gap:3px}
.talent-progress-copy strong{font-size:11px;color:#ddd6c5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.talent-progress-copy span{font-size:8px;color:#757a70}
.talent-dashboard-progress .talent-xp-bar{height:6px;margin-top:8px}
.talent-progress-foot{margin-top:6px;display:flex;justify-content:space-between;color:#666b62;font-size:7px}

.talent-dashboard .talent-detail-card{display:flex;flex-direction:column;min-height:0}
.talent-dashboard .talent-detail-card h3{font-family:Georgia,serif;font-weight:500;font-size:17px;line-height:1.15;margin:4px 0 5px;color:#e5dfcf}
.talent-dashboard .talent-detail-card p{margin:0;color:#888d82;font-size:9px;line-height:1.38;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.talent-dashboard .talent-detail-meta{font-size:8px;margin-top:5px}
.talent-dashboard .talent-detail-card .btn{height:34px;margin-top:auto;padding:0 12px;font-size:10px;width:100%}

.talent-dashboard-section-head{display:flex;justify-content:space-between;align-items:center;gap:8px}
.talent-dashboard-section-head>div{min-width:0;display:flex;flex-direction:column;gap:2px}
.talent-dashboard-section-head strong{font-family:Georgia,serif;font-size:14px;font-weight:500;color:#ddd7c8}
.talent-dashboard-section-head>span{font-size:8px;color:#777b71}
.favorite-card-actions-compact{display:flex!important;flex-direction:row!important;gap:5px!important}
.favorite-card-actions-compact .btn{height:29px!important;padding:0 9px!important;font-size:8px!important;border-radius:8px}
.favorite-card-actions-compact .btn-ghost{width:29px;padding:0!important}
.talent-favorite-compact{margin-top:8px;min-height:58px;display:grid;grid-template-columns:44px minmax(0,1fr);gap:9px;align-items:center;padding:6px;border:1px solid #2d3128;border-radius:10px;background:#0e100d;overflow:hidden}
.talent-favorite-compact>img{width:44px;height:54px;object-fit:contain;border-radius:6px;background:#090b08}
.talent-favorite-compact>div{min-width:0;display:flex;flex-direction:column;gap:2px}
.talent-favorite-compact>div>.rarity-badge{align-self:flex-start;font-size:6px;padding:2px 5px}
.talent-favorite-compact strong{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#ddd8ca}
.talent-favorite-compact small{font-size:7px;color:#777b71;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.talent-favorite-empty{width:40px;height:40px;border:1px solid rgba(200,173,106,.23);border-radius:50%;display:grid;place-items:center;color:#c9ae68;font-size:19px}

.talent-bonus-list-compact{display:grid!important;grid-template-columns:repeat(3,1fr);gap:6px!important;margin-top:7px!important}
.talent-bonus-list-compact>div{min-width:0;display:flex!important;flex-direction:column;align-items:center;gap:2px!important;padding:6px 4px!important;text-align:center}
.talent-bonus-list-compact span{font-size:7px;white-space:nowrap}
.talent-bonus-list-compact strong{font-size:9px}

.talent-dashboard-sockets{min-height:0;display:flex;flex-direction:column}
.talent-socket-grid{margin-top:7px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;align-content:start;min-height:0}
.talent-socket-chip{aspect-ratio:1/1;min-width:0;border:1px solid #30342a;border-radius:8px;background:#0f110e;color:#82775b;display:grid;place-items:center;position:relative;overflow:hidden;cursor:pointer;padding:0;transition:.16s}
.talent-socket-chip:hover{border-color:#716447;transform:translateY(-1px);box-shadow:0 5px 14px rgba(0,0,0,.3)}
.talent-socket-chip img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.8) brightness(.75)}
.talent-socket-plus{font-size:16px;line-height:1;color:#a08d58}
.talent-socket-chip>small{position:absolute;right:3px;bottom:2px;font-size:6px;color:#6e7168}
.talent-socket-rarity{position:absolute;left:2px;bottom:2px;padding:1px 3px;border-radius:4px;background:rgba(7,8,6,.82);font-size:5px;font-weight:900;color:#e0c980}
.talent-reset-button-dashboard{height:46px!important;border-radius:12px;display:flex!important;flex-direction:column;gap:1px;font-size:10px!important}
.talent-reset-button-dashboard small{font-size:7px!important}

@media(max-width:1320px){
  .talent-workspace{grid-template-columns:minmax(0,1fr) 330px}
  .talent-tree-toolbar-copy span{max-width:380px}
  .talent-socket-grid{gap:4px}
}
@media(max-height:760px) and (min-width:1151px){
  .talent-tree-page .main-content{padding:8px 10px}
  .talent-workspace{gap:8px}
  .talent-tree-toolbar{height:52px;flex-basis:52px;padding:7px 10px}
  .talent-tree-toolbar-copy strong{font-size:15px}.talent-tree-toolbar-copy span{display:none}
  .talent-dashboard{gap:5px;grid-template-rows:auto minmax(98px,auto) auto auto minmax(90px,1fr) 42px}
  .talent-dashboard-block{padding:8px 9px;border-radius:10px}
  .talent-level-mini{width:48px;height:48px;flex-basis:48px}.talent-level-mini strong{font-size:20px}
  .talent-dashboard .talent-detail-card h3{font-size:15px}.talent-dashboard .talent-detail-card p{-webkit-line-clamp:3;font-size:8px}
  .talent-favorite-compact{min-height:48px}.talent-favorite-compact>img{width:38px;height:44px}.talent-favorite-compact{grid-template-columns:38px 1fr}
  .talent-socket-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:3px}
  .talent-reset-button-dashboard{height:42px!important}
}
@media(max-width:1150px){
  body.talent-tree-page{overflow:auto}
  .talent-tree-page .main-content{height:auto;overflow:visible;padding:22px 22px 55px}
  .talent-tree-page .page-header{display:flex}
  .talent-workspace{height:auto;display:grid;grid-template-columns:1fr;overflow:visible}
  .talent-board-card-full{height:720px}
  .talent-dashboard{height:auto;overflow:visible;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:none}
  .talent-dashboard-sockets{grid-column:1/-1}
  .talent-reset-button-dashboard{grid-column:1/-1}
  .talent-socket-grid{grid-template-columns:repeat(10,minmax(0,1fr))}
}
@media(max-width:760px){
  .talent-tree-page .main-content{padding:94px 12px 86px}
  .talent-board-card-full{height:620px}
  .talent-tree-toolbar{height:auto;min-height:70px;align-items:flex-start;flex-direction:column}
  .talent-tree-toolbar-copy span{white-space:normal}
  .talent-dashboard{grid-template-columns:1fr}
  .talent-dashboard-sockets,.talent-reset-button-dashboard{grid-column:auto}
  .talent-socket-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
}


/* === Gracebound 0.2.32 · Arbre de talents grand confort === */
.talent-workspace{grid-template-columns:minmax(0,1fr) 400px;gap:16px}
.talent-tree-toolbar{height:70px;flex:0 0 70px;padding:12px 14px 11px 18px}
.talent-tree-toolbar-copy strong{font-size:20px}
.talent-tree-toolbar-copy span{font-size:9px}
.talent-tree-page .talent-zoom-controls{padding:5px 8px;gap:7px}
.talent-tree-page .talent-zoom-controls .icon-btn{width:32px;height:32px}
.talent-tree-page .talent-zoom-reset{height:32px;min-width:60px;font-size:11px}
.talent-tree-page .talent-zoom-value{font-size:10px;min-width:46px}
.talent-tree-page .talent-board-stage{margin:46px}
.talent-dashboard{grid-template-rows:auto minmax(132px,auto) auto auto minmax(136px,1fr) 52px;gap:10px}
.talent-dashboard-block{padding:13px 14px;border-radius:15px}
.talent-dashboard-block>small,.talent-dashboard-section-head small,.talent-progress-copy>small{font-size:8px}
.talent-level-mini{width:68px;height:68px;flex:0 0 68px;padding:9px 8px}
.talent-level-mini>span{font-size:7px}
.talent-level-mini strong{font-size:28px}
.talent-level-mini small{font-size:8px}
.talent-progress-copy strong{font-size:13px}
.talent-progress-copy span{font-size:9px}
.talent-dashboard-progress .talent-xp-bar{height:7px;margin-top:9px}
.talent-progress-foot{font-size:8px}
.talent-dashboard .talent-detail-card h3{font-size:20px;margin:5px 0 6px}
.talent-dashboard .talent-detail-card p{font-size:10px;line-height:1.42;-webkit-line-clamp:5}
.talent-dashboard .talent-detail-meta{font-size:9px}
.talent-dashboard .talent-detail-card .btn{height:40px;font-size:11px}
.talent-dashboard-section-head strong{font-size:15px}
.favorite-card-actions-compact .btn{height:32px!important;padding:0 10px!important;font-size:9px!important}
.favorite-card-actions-compact .btn-ghost{width:32px}
.talent-favorite-compact{min-height:68px;grid-template-columns:54px minmax(0,1fr);gap:10px;padding:7px}
.talent-favorite-compact>img{width:54px;height:66px}
.talent-favorite-compact>div>.rarity-badge{font-size:7px}
.talent-favorite-compact strong{font-size:10px}
.talent-favorite-compact small{font-size:8px}
.talent-favorite-empty{width:46px;height:46px;font-size:22px}
.talent-bonus-list-compact{gap:7px!important}
.talent-bonus-list-compact>div{padding:7px 5px!important}
.talent-bonus-list-compact span{font-size:8px}
.talent-bonus-list-compact strong{font-size:10px}
.talent-socket-grid{gap:6px}
.talent-socket-chip{border-radius:10px}
.talent-socket-plus{font-size:18px}
.talent-socket-chip>small{font-size:7px}
.talent-socket-rarity{font-size:6px;padding:1px 4px}
.talent-reset-button-dashboard{height:52px!important;font-size:11px!important}
.talent-reset-button-dashboard small{font-size:8px!important}
.talent-node{width:70px;height:70px}
.talent-node-core{inset:7px;font-size:18px}
.talent-node-cost{width:24px;height:24px;font-size:10px}
.talent-node-label{top:76px;width:138px;font-size:8.8px;line-height:1.28}
.talent-node.is-center{width:92px;height:92px}
.talent-node.is-center .talent-node-core{font-size:29px}
.talent-node.is-center .talent-node-label{top:99px}
.talent-node.is-subtree-root{width:90px;height:90px;border-color:#d4b866;color:#f2dfa0;background:#17150e;box-shadow:0 0 0 7px rgba(200,173,106,.045),0 0 42px rgba(200,173,106,.24)}
.talent-node.is-subtree-root .talent-node-core{inset:9px;border-color:#ae9457;background:radial-gradient(circle,#40371f,#11130e 72%)}
.talent-node.is-subtree-root .talent-node-label{top:98px;width:160px;color:#dfc982;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.7px}
.talent-node.is-subtree-root .talent-node-glyph{left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:30px;height:30px;font-size:18px}
.talent-node-glyph{width:22px;height:22px;font-size:12px}
.talent-node.is-center .talent-node-glyph{width:30px;height:30px;font-size:19px}
@media(max-width:1320px){.talent-workspace{grid-template-columns:minmax(0,1fr) 360px}}
@media(max-width:1150px){.talent-board-card-full{height:760px}.talent-dashboard{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.talent-socket-grid{grid-template-columns:repeat(10,minmax(0,1fr))}}
@media(max-width:760px){.talent-tree-page .main-content{padding:94px 12px 86px}.talent-board-card-full{height:690px}.talent-tree-toolbar{min-height:78px;padding:12px 12px 10px 14px}.talent-tree-toolbar-copy strong{font-size:19px}.talent-tree-toolbar-copy span{font-size:9px;line-height:1.35}.talent-dashboard{grid-template-columns:1fr;gap:10px}.talent-dashboard-block{padding:14px}.talent-level-mini{width:72px;height:72px;flex-basis:72px}.talent-level-mini strong{font-size:30px}.talent-progress-copy strong{font-size:14px}.talent-progress-copy span{font-size:9px}.talent-dashboard .talent-detail-card h3{font-size:22px}.talent-dashboard .talent-detail-card p{font-size:10px;-webkit-line-clamp:6}.favorite-card-actions-compact .btn{height:34px!important;font-size:10px!important}.talent-favorite-compact{grid-template-columns:58px 1fr;min-height:74px}.talent-favorite-compact>img{width:58px;height:72px}.talent-bonus-list-compact{grid-template-columns:repeat(3,1fr)}.talent-bonus-list-compact span{font-size:8px}.talent-bonus-list-compact strong{font-size:10px}.talent-socket-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.talent-socket-plus{font-size:20px}.talent-reset-button-dashboard{height:54px!important}}

/* === Gracebound 0.2.33 · Correctif cadrage niveau === */
.talent-level-mini{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:1px!important;
  padding:7px!important;
  line-height:1!important;
}
.talent-level-mini>span{
  display:block!important;
  width:100%!important;
  text-align:center!important;
  font-size:7px!important;
  line-height:1!important;
  margin:0 0 2px!important;
}
.talent-level-mini strong{
  display:block!important;
  width:100%!important;
  text-align:center!important;
  font-size:29px!important;
  line-height:.95!important;
  margin:0!important;
}
.talent-level-mini small{
  display:block!important;
  width:100%!important;
  text-align:center!important;
  font-size:7px!important;
  line-height:1!important;
  margin:1px 0 0!important;
}
@media(max-width:760px){
  .talent-level-mini strong{font-size:31px!important}
  .talent-level-mini>span,.talent-level-mini small{font-size:7px!important}
}


/* === Gracebound 0.2.34 · Arbre de talents lisibilité ++ === */
.talent-dashboard-block>small,.talent-dashboard-section-head small,.talent-progress-copy>small{font-size:9px;letter-spacing:1.55px}
.talent-progress-copy strong{font-size:15px}
.talent-progress-copy span{font-size:10px}
.talent-dashboard .talent-detail-card h3{font-size:24px;line-height:1.12;margin:6px 0 8px}
.talent-dashboard .talent-detail-card p{font-size:11px;line-height:1.5;-webkit-line-clamp:6}
.talent-dashboard .talent-detail-meta{font-size:9.5px}
.talent-dashboard .talent-detail-card .btn{height:42px;font-size:12px}
.talent-dashboard-section-head strong{font-size:17px}
.favorite-card-actions-compact .btn{height:34px!important;font-size:10px!important;padding:0 12px!important}
.favorite-card-actions-compact .btn-ghost{width:34px}
.talent-favorite-compact{grid-template-columns:62px minmax(0,1fr);gap:12px;min-height:80px;padding:9px}
.talent-favorite-compact>img{width:62px;height:76px}
.talent-favorite-compact>div>.rarity-badge{font-size:7.5px;padding:2px 5px}
.talent-favorite-compact strong{font-size:11.5px;white-space:normal;line-height:1.25;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.talent-favorite-compact small{font-size:8.8px;line-height:1.35}
.talent-bonus-list-compact>div{padding:9px 6px!important}
.talent-bonus-list-compact span{font-size:8.8px}
.talent-bonus-list-compact strong{font-size:11px}
.talent-progress-foot{font-size:8.5px}
.talent-reset-button-dashboard{font-size:12px!important}
.talent-reset-button-dashboard small{font-size:8.5px!important}
@media(max-width:760px){
  .talent-dashboard-block{padding:16px}
  .talent-dashboard-block>small,.talent-dashboard-section-head small,.talent-progress-copy>small{font-size:9px}
  .talent-progress-copy strong{font-size:15px}
  .talent-progress-copy span{font-size:10px;line-height:1.4}
  .talent-dashboard .talent-detail-card h3{font-size:26px;line-height:1.12;margin:7px 0 8px}
  .talent-dashboard .talent-detail-card p{font-size:11.5px;line-height:1.52;-webkit-line-clamp:7}
  .talent-dashboard .talent-detail-meta{font-size:9.5px}
  .talent-dashboard .talent-detail-card .btn{height:44px;font-size:12px}
  .talent-dashboard-section-head strong{font-size:18px}
  .favorite-card-actions-compact .btn{height:36px!important;font-size:10px!important;padding:0 12px!important}
  .favorite-card-actions-compact .btn-ghost{width:36px}
  .talent-favorite-compact{grid-template-columns:66px 1fr;gap:12px;min-height:84px;padding:10px}
  .talent-favorite-compact>img{width:66px;height:80px}
  .talent-favorite-compact strong{font-size:12px;line-height:1.25;-webkit-line-clamp:2}
  .talent-favorite-compact small{font-size:9px;line-height:1.35}
  .talent-bonus-list-compact>div{padding:10px 6px!important}
  .talent-bonus-list-compact span{font-size:9px}
  .talent-bonus-list-compact strong{font-size:11px}
  .talent-reset-button-dashboard{height:56px!important;font-size:12px!important}
  .talent-reset-button-dashboard small{font-size:8.5px!important}
}


/* === Gracebound 0.2.35 · Centrage dynamique de l'arbre === */
.talent-tree-page .talent-board-stage{
  margin:46px;
  transition:margin .12s ease;
}
.talent-tree-page .talent-board-scroll.is-panning .talent-board-stage{
  transition:none;
}
@media(max-width:760px){
  .talent-tree-page .talent-board-stage{margin:18px}
}


/* === Gracebound 0.2.36 · Espacement régulier + infobulles === */
/* Le moteur PHP place maintenant chaque rang à exactement 128 px du précédent. */
.talent-tree-page .talent-board-stage{width:3400px;height:2200px}
.talent-tree-page .talent-board{width:3400px;height:2200px}
.talent-tree-page .talent-board:before,.talent-tree-page .talent-board:after{left:1700px;top:1100px}
.talent-tree-page .talent-board:before{width:1024px;height:1024px}
.talent-tree-page .talent-board:after{width:2048px;height:2048px}
.talent-tree-page .talent-connections{width:3400px;height:2200px}
.talent-hover-tooltip{position:fixed;left:0;top:0;z-index:160;width:min(310px,calc(100vw - 24px));padding:11px 12px;border:1px solid rgba(202,176,105,.36);border-radius:11px;background:rgba(14,16,13,.97);box-shadow:0 14px 45px rgba(0,0,0,.64),0 0 24px rgba(200,173,106,.08);backdrop-filter:blur(9px);pointer-events:none;opacity:0;visibility:hidden;transform:translateY(4px);transition:opacity .11s ease,transform .11s ease,visibility .11s;color:#dcd7ca}
.talent-hover-tooltip.visible{opacity:1;visibility:visible;transform:translateY(0)}
.talent-hover-tooltip small{display:block;margin-bottom:4px;color:#aa9258;font-size:8px;font-weight:900;letter-spacing:1.25px;text-transform:uppercase}
.talent-hover-tooltip strong{display:block;font-family:Georgia,serif;font-size:17px;font-weight:500;line-height:1.18;color:#ede5d4}
.talent-hover-tooltip p{margin:6px 0 7px;color:#a5a99f;font-size:10px;line-height:1.42}
.talent-hover-tooltip span{display:block;padding-top:6px;border-top:1px solid #2c3027;color:#d7c27e;font-size:9px;font-weight:800}
@media(max-width:760px){.talent-hover-tooltip{display:none}}


/* === Gracebound 0.2.37 · Infobulle lisibilité ++ === */
.talent-hover-tooltip{width:min(390px,calc(100vw - 24px));padding:14px 15px;border-radius:13px}
.talent-hover-tooltip small{margin-bottom:6px;font-size:10px;letter-spacing:1.35px}
.talent-hover-tooltip strong{font-size:20px;line-height:1.18}
.talent-hover-tooltip p{margin:8px 0 9px;font-size:12px;line-height:1.5}
.talent-hover-tooltip span{padding-top:7px;font-size:10.5px;line-height:1.45}


/* === Gracebound 0.2.40 · Résumé du build détaillé === */
.talent-dashboard-bonuses{display:flex;flex-direction:column;min-height:0}
.talent-bonus-main-grid{margin-top:8px!important}
.talent-bonus-main-grid>div{gap:1px!important;padding:8px 5px!important}
.talent-bonus-main-grid>div>small{display:block;color:#686d64;font-size:7px;line-height:1.2;white-space:normal}
.talent-build-overview{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:7px}
.talent-build-overview>div{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #282c23;background:#0f110e;border-radius:8px;padding:7px 8px}
.talent-build-overview span{font-size:8px;color:#858a80}
.talent-build-overview strong{font-size:10px;color:#d8c37d;white-space:nowrap}
.talent-build-details{margin-top:8px;display:flex;flex-direction:column;gap:8px;min-height:0;max-height:162px;overflow:auto;padding-right:3px;scrollbar-width:thin;scrollbar-color:#464236 #11130f}
.talent-build-group>small{display:block;margin:0 0 5px;color:#83754f;font-size:7px;font-weight:900;letter-spacing:1px}
.talent-build-chip-list{display:flex;flex-wrap:wrap;gap:5px}
.talent-build-chip-list>span{display:inline-flex;align-items:center;gap:5px;border:1px solid #2c3027;background:#11140f;border-radius:999px;padding:5px 7px;min-width:0}
.talent-build-chip-list b{font-size:8px;color:#aeb1a8;font-weight:650}
.talent-build-chip-list strong{font-size:8px;color:#dfca82;white-space:nowrap}
.talent-build-empty{border:1px dashed #30342a;border-radius:8px;padding:8px 9px;color:#747970;font-size:8px;line-height:1.35}
@media(max-height:760px) and (min-width:1151px){
  .talent-build-details{max-height:112px}
  .talent-bonus-main-grid>div>small{display:none}
  .talent-build-overview>div{padding:5px 7px}
}
@media(max-width:760px){
  .talent-bonus-main-grid>div>small{font-size:8px}
  .talent-build-overview span{font-size:9px}.talent-build-overview strong{font-size:11px}
  .talent-build-details{max-height:none;overflow:visible}
  .talent-build-group>small{font-size:8px}
  .talent-build-chip-list b,.talent-build-chip-list strong{font-size:9px}
  .talent-build-empty{font-size:9px}
}


/* === Gracebound 0.2.42 · BONUS ACTIFS lisibilité ++ === */
.talent-dashboard-bonuses .talent-dashboard-section-head strong{font-size:18px}
.talent-dashboard-bonuses .talent-dashboard-section-head small{font-size:9px}
.talent-bonus-main-grid{gap:8px!important;margin-top:10px!important}
.talent-bonus-main-grid>div{padding:10px 8px!important;gap:3px!important;border-radius:10px!important}
.talent-bonus-main-grid>div span{font-size:9px!important}
.talent-bonus-main-grid>div strong{font-size:16px!important;line-height:1.1}
.talent-bonus-main-grid>div>small{font-size:8.5px!important;line-height:1.3}
.talent-build-overview{gap:8px;margin-top:9px}
.talent-build-overview>div{padding:9px 10px;border-radius:10px}
.talent-build-overview span{font-size:9px}
.talent-build-overview strong{font-size:12px}
.talent-build-details{margin-top:10px;gap:10px;max-height:240px;padding-right:4px}
.talent-build-group>small{margin:0 0 7px;font-size:8.5px;letter-spacing:1.1px}
.talent-build-chip-list{gap:7px}
.talent-build-chip-list>span{padding:7px 10px;gap:6px;border-radius:999px}
.talent-build-chip-list b{font-size:10px}
.talent-build-chip-list strong{font-size:10px}
.talent-build-empty{padding:10px 11px;font-size:10px;line-height:1.45}
@media(max-height:760px) and (min-width:1151px){
  .talent-bonus-main-grid>div>small{display:block}
  .talent-build-details{max-height:190px}
}
@media(max-width:760px){
  .talent-dashboard-bonuses .talent-dashboard-section-head strong{font-size:20px}
  .talent-bonus-main-grid{gap:9px!important}
  .talent-bonus-main-grid>div{padding:11px 8px!important}
  .talent-bonus-main-grid>div span{font-size:9px!important}
  .talent-bonus-main-grid>div strong{font-size:17px!important}
  .talent-bonus-main-grid>div>small{display:block;font-size:9px!important}
  .talent-build-overview{grid-template-columns:1fr 1fr;gap:8px}
  .talent-build-overview>div{padding:10px}
  .talent-build-overview span{font-size:9.5px}
  .talent-build-overview strong{font-size:12px}
  .talent-build-details{max-height:320px;overflow:auto}
  .talent-build-group>small{font-size:8.8px;margin-bottom:7px}
  .talent-build-chip-list>span{padding:7px 10px}
  .talent-build-chip-list b,.talent-build-chip-list strong{font-size:10px}
  .talent-build-empty{font-size:10px}
}


/* === Gracebound 0.2.43 · Lignes Boost Drop === */
.talent-drop-boost-lines{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}
.talent-drop-boost-lines>div{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;border:1px solid #2c3027;background:#10130f;border-radius:10px;padding:9px 10px}
.talent-drop-boost-lines span{font-size:9.5px;color:#aaa99f;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.talent-drop-boost-lines strong{font-size:12px;color:#e0ca82;white-space:nowrap}
@media(max-width:760px){
  .talent-drop-boost-lines{grid-template-columns:1fr;gap:8px}
  .talent-drop-boost-lines>div{padding:11px 12px}
  .talent-drop-boost-lines span{font-size:10.5px}
  .talent-drop-boost-lines strong{font-size:13px}
}

/* === Gracebound 0.2.45 · Filtre des bonus dans les Emplacements fétiches === */
.talent-picker-filter-row{display:grid;grid-template-columns:minmax(260px,1fr) minmax(220px,300px);gap:10px;align-items:end;margin-top:2px}
.talent-picker-filter-row .card-picker-search{margin:0}
.talent-picker-bonus-filter{display:flex;flex-direction:column;gap:5px;min-width:0}
.talent-picker-bonus-filter[hidden]{display:none!important}
.talent-picker-bonus-filter>span{font-size:9px;font-weight:900;letter-spacing:1px;text-transform:uppercase;color:#9d8956}
.talent-picker-bonus-filter select{width:100%;height:46px;border:1px solid #34382e;background:#141713;color:#ddd8ca;border-radius:11px;padding:0 34px 0 12px;outline:none;font-size:12px;font-weight:700;cursor:pointer}
.talent-picker-bonus-filter select:focus{border-color:#716447;box-shadow:0 0 0 3px rgba(200,173,106,.08)}
.talent-picker-card-bonuses{display:flex!important;flex-wrap:wrap;gap:4px;margin-top:7px}
.talent-picker-card-bonuses i{display:inline-flex;align-items:center;min-height:20px;padding:3px 6px;border:1px solid #34382e;border-radius:999px;background:#0d100c;color:#b7aa82;font-size:7.5px;font-style:normal;font-weight:800;line-height:1.15}
@media(max-width:760px){
  .talent-picker-filter-row{grid-template-columns:1fr;gap:8px}
  .talent-picker-bonus-filter>span{font-size:10px}
  .talent-picker-bonus-filter select{height:48px;font-size:13px}
  .talent-picker-card-bonuses i{font-size:8.5px;padding:4px 7px}
}


/* === Gracebound 0.2.45 · Résumé du build sur le nœud central === */
.talent-center-build-tooltip{
  position:fixed;left:0;top:0;z-index:170;width:min(640px,calc(100vw - 30px));max-height:calc(100vh - 24px);
  padding:20px 22px;border:1px solid rgba(218,190,111,.48);border-radius:17px;
  background:linear-gradient(180deg,rgba(18,21,16,.985),rgba(10,12,9,.985));
  box-shadow:0 24px 80px rgba(0,0,0,.76),0 0 42px rgba(200,173,106,.12);backdrop-filter:blur(12px);
  pointer-events:none;opacity:0;visibility:hidden;transform:scale(.985);transition:opacity .12s ease,transform .12s ease,visibility .12s;
  overflow:hidden;color:#ddd8ca
}
.talent-center-build-tooltip.visible{opacity:1;visibility:visible;transform:scale(1)}
.talent-center-build-tooltip .talent-dashboard-section-head{margin-bottom:2px}
.talent-center-build-tooltip .talent-dashboard-section-head small{font-size:10px!important;letter-spacing:1.7px}
.talent-center-build-tooltip .talent-dashboard-section-head strong{font-size:26px!important;line-height:1.05}
.talent-center-build-tooltip .talent-dashboard-section-head>span{font-size:11px;color:#a29d8e}
.talent-center-build-tooltip .talent-bonus-main-grid{gap:10px!important;margin-top:14px!important}
.talent-center-build-tooltip .talent-bonus-main-grid>div{padding:12px 10px!important;border-radius:12px!important}
.talent-center-build-tooltip .talent-bonus-main-grid span{font-size:11px!important}
.talent-center-build-tooltip .talent-bonus-main-grid strong{font-size:19px!important}
.talent-center-build-tooltip .talent-bonus-main-grid>div>small{display:block!important;font-size:9.5px!important}
.talent-center-build-tooltip .talent-build-overview{gap:10px;margin-top:11px}
.talent-center-build-tooltip .talent-build-overview>div{padding:11px 12px;border-radius:11px}
.talent-center-build-tooltip .talent-build-overview span{font-size:11px}
.talent-center-build-tooltip .talent-build-overview strong{font-size:14px}
.talent-center-build-tooltip .talent-drop-boost-lines{gap:9px;margin-top:11px}
.talent-center-build-tooltip .talent-drop-boost-lines>div{padding:11px 12px}
.talent-center-build-tooltip .talent-drop-boost-lines span{font-size:11px}
.talent-center-build-tooltip .talent-drop-boost-lines strong{font-size:14px}
.talent-center-build-tooltip .talent-build-details{margin-top:13px;max-height:none!important;overflow:visible!important;gap:12px;padding-right:0}
.talent-center-build-tooltip .talent-build-group>small{font-size:9.5px;margin-bottom:8px;letter-spacing:1.25px}
.talent-center-build-tooltip .talent-build-chip-list{gap:7px}
.talent-center-build-tooltip .talent-build-chip-list>span{padding:7px 10px}
.talent-center-build-tooltip .talent-build-chip-list b,.talent-center-build-tooltip .talent-build-chip-list strong{font-size:11px}
.talent-center-build-tooltip .talent-build-empty{font-size:11px;padding:11px 12px}
@media(max-width:760px){.talent-center-build-tooltip{display:none}}


/* === Gracebound 0.2.49 · Emplacements fétiches magiques très visibles === */
.talent-node[data-node-id="slot_spell_1"],
.talent-node[data-node-id="slot_incantation_1"],
.talent-node[data-node-id="slot_seal_1"],
.talent-node[data-node-id="slot_ash_1"]{
  width:78px;height:78px;
  border:2px dashed #c9ab5f;
  box-shadow:0 0 0 5px rgba(200,173,106,.08),0 0 30px rgba(200,173,106,.18);
  opacity:1
}
.talent-node[data-node-id="slot_spell_1"] .talent-node-core,
.talent-node[data-node-id="slot_incantation_1"] .talent-node-core,
.talent-node[data-node-id="slot_seal_1"] .talent-node-core,
.talent-node[data-node-id="slot_ash_1"] .talent-node-core{
  inset:8px;border:2px dashed #a98f50;background:radial-gradient(circle,rgba(200,173,106,.13),#0c0e0b 72%)
}
.talent-node[data-node-id="slot_spell_1"] .talent-node-glyph,
.talent-node[data-node-id="slot_incantation_1"] .talent-node-glyph,
.talent-node[data-node-id="slot_seal_1"] .talent-node-glyph,
.talent-node[data-node-id="slot_ash_1"] .talent-node-glyph{
  font-size:0;left:50%;top:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);
  width:34px;height:34px;border:1px solid rgba(226,199,120,.6);background:rgba(22,20,13,.9)
}
.talent-node[data-node-id="slot_spell_1"] .talent-node-glyph:before,
.talent-node[data-node-id="slot_incantation_1"] .talent-node-glyph:before,
.talent-node[data-node-id="slot_seal_1"] .talent-node-glyph:before,
.talent-node[data-node-id="slot_ash_1"] .talent-node-glyph:before{
  content:"+";font-family:Arial,sans-serif;font-size:25px;line-height:1;color:#f0d98a;font-weight:800
}
.talent-node[data-node-id="slot_spell_1"] .talent-node-label,
.talent-node[data-node-id="slot_incantation_1"] .talent-node-label,
.talent-node[data-node-id="slot_seal_1"] .talent-node-label,
.talent-node[data-node-id="slot_ash_1"] .talent-node-label{
  top:86px;width:190px;color:#d7c27e!important;font-size:10px;font-weight:800;line-height:1.3
}
.talent-node[data-node-id="slot_spell_1"] .talent-node-cost,
.talent-node[data-node-id="slot_incantation_1"] .talent-node-cost,
.talent-node[data-node-id="slot_seal_1"] .talent-node-cost,
.talent-node[data-node-id="slot_ash_1"] .talent-node-cost{
  width:25px;height:25px;font-size:10px;background:#211e13;border-color:#8a7545;color:#ead58d
}

/* === Gracebound 0.2.54 · Bonus visibles sur toutes les cartes + aperçu au survol === */
.card-affinity-section{margin-top:9px;padding-top:8px;border-top:1px solid #282c23;min-width:0}
.card-affinity-title{display:block!important;margin:0 0 6px!important;color:#8d7d51!important;font-size:7px!important;font-weight:900!important;letter-spacing:1.05px!important;line-height:1!important}
.card-affinity-tags{display:flex;flex-wrap:wrap;gap:5px;min-width:0}
.card-affinity-tags>span{display:inline-flex;align-items:center;min-height:22px;padding:4px 7px;border:1px solid #34382d;border-radius:999px;background:#0e110d;color:#c8c2ae;font-size:8px;font-weight:750;line-height:1.1;white-space:normal}
.card-affinity-section.is-compact{margin-top:6px;padding-top:6px}
.card-affinity-section.is-compact .card-affinity-title{font-size:6px!important;margin-bottom:4px!important}
.card-affinity-section.is-compact .card-affinity-tags{gap:3px}
.card-affinity-section.is-compact .card-affinity-tags>span{min-height:18px;padding:3px 5px;font-size:7px}

.card-picker-card .card-affinity-section,.talent-picker-card .card-affinity-section{width:100%;text-align:left}
.card-picker-card .card-affinity-tags,.talent-picker-card .card-affinity-tags{justify-content:flex-start}
.reveal-info .card-affinity-section{margin-top:4px;padding-top:4px}
.reveal-info .card-affinity-title{display:none!important}
.reveal-info .card-affinity-tags{justify-content:center;gap:2px}
.reveal-info .card-affinity-tags>span{min-height:15px;padding:2px 4px;font-size:6px}

.global-card-hover-preview{position:fixed;z-index:250;width:340px;max-width:calc(100vw - 20px);padding:12px;border:1px solid rgba(211,184,102,.48);border-radius:15px;background:rgba(12,14,11,.985);box-shadow:0 22px 70px rgba(0,0,0,.72),0 0 28px rgba(200,173,106,.10);backdrop-filter:blur(10px);pointer-events:none;opacity:0;visibility:hidden;transform:translateY(5px);transition:opacity .1s ease,transform .1s ease,visibility .1s;color:#e7e1d2}
.global-card-hover-preview.visible{opacity:1;visibility:visible;transform:translateY(0)}
.global-card-hover-art{height:300px;position:relative;display:grid;place-items:center;border:1px solid #282c23;border-radius:11px;background:radial-gradient(circle at 50% 38%,#2c3027,#11130f 64%,#090b08);overflow:hidden}
.global-card-hover-art>img{width:92%;height:92%;object-fit:contain;filter:drop-shadow(0 14px 22px rgba(0,0,0,.65))}
.global-card-hover-art>.rarity-badge{left:9px;top:9px;right:auto}
.global-card-hover-copy{padding:11px 3px 2px}
.global-card-hover-copy>small{display:block;color:#777d72;font-size:9px;line-height:1.35;margin-bottom:4px}
.global-card-hover-copy>strong{display:block;font-family:Georgia,serif;font-size:20px;font-weight:600;line-height:1.18;color:#eee5d2;margin-bottom:10px}
.global-card-hover-label{display:block;color:#9b8753;font-size:8px;font-weight:900;letter-spacing:1.25px;margin-bottom:7px}
.global-card-hover-tags{display:flex;flex-wrap:wrap;gap:6px}
.global-card-hover-tags>i{display:inline-flex;align-items:center;padding:6px 9px;border:1px solid #3c3d30;border-radius:999px;background:#151811;color:#e0ce91;font-size:10px;font-style:normal;font-weight:800}
.global-card-hover-tags>em{color:#777c72;font-size:10px;font-style:normal}

@media(max-width:760px){
  .card-affinity-title{font-size:8px!important}
  .card-affinity-tags>span{font-size:9px;min-height:24px;padding:5px 8px}
  .global-card-hover-preview{display:none!important}
}

/* === Gracebound 0.2.55 · Cartes / aperçu hover beaucoup plus lisibles === */
.card-affinity-section{margin-top:11px;padding-top:10px}
.card-affinity-title{margin-bottom:8px!important;font-size:9px!important;letter-spacing:1.25px!important}
.card-affinity-tags{gap:7px}
.card-affinity-tags>span{min-height:28px;padding:6px 10px;font-size:10px;font-weight:800;line-height:1.15}

.card-affinity-section.is-compact{margin-top:8px;padding-top:8px}
.card-affinity-section.is-compact .card-affinity-title{font-size:8px!important;margin-bottom:6px!important}
.card-affinity-section.is-compact .card-affinity-tags{gap:5px}
.card-affinity-section.is-compact .card-affinity-tags>span{min-height:24px;padding:5px 8px;font-size:9px}

.global-card-hover-preview{
  width:460px;
  max-width:calc(100vw - 24px);
  padding:16px;
  border-radius:18px;
}
.global-card-hover-art{height:390px;border-radius:14px}
.global-card-hover-art>img{width:94%;height:94%}
.global-card-hover-art>.rarity-badge{left:12px;top:12px;font-size:12px!important;padding:7px 11px!important}
.global-card-hover-copy{padding:15px 5px 4px}
.global-card-hover-copy>small{font-size:12px;line-height:1.45;margin-bottom:7px}
.global-card-hover-copy>strong{font-size:28px;line-height:1.16;margin-bottom:14px}
.global-card-hover-label{font-size:10px;letter-spacing:1.45px;margin-bottom:10px}
.global-card-hover-tags{gap:8px}
.global-card-hover-tags>i{padding:8px 12px;font-size:12px;line-height:1.2}
.global-card-hover-tags>em{font-size:12px}

/* Sélecteur des emplacements fétiches : badges plus lisibles aussi */
.talent-picker-card-bonuses{gap:6px;margin-top:9px}
.talent-picker-card-bonuses i{min-height:26px;padding:5px 9px;font-size:9.5px}

@media(max-width:760px){
  .card-affinity-title{font-size:9px!important}
  .card-affinity-tags>span{font-size:10px;min-height:28px;padding:6px 10px}
  .talent-picker-card-bonuses i{font-size:10px;min-height:28px;padding:6px 10px}
}


/* === Gracebound 0.2.57 · Aperçu dédié au-dessus de la modale fétiche === */
.talent-picker-hover-preview{
  position:fixed;
  left:0;
  top:0;
  z-index:10080;
  width:480px;
  max-width:calc(100vw - 24px);
  padding:16px;
  border:1px solid rgba(216,188,105,.58);
  border-radius:18px;
  background:rgba(11,13,10,.995);
  box-shadow:0 28px 90px rgba(0,0,0,.86),0 0 36px rgba(200,173,106,.14);
  backdrop-filter:blur(12px);
  pointer-events:none;
  opacity:0;
  visibility:hidden;
  transform:translateY(5px);
  transition:opacity .09s ease,transform .09s ease,visibility .09s;
  color:#e9e3d5;
}
.talent-picker-hover-preview.visible{opacity:1;visibility:visible;transform:translateY(0)}
.talent-picker-hover-art{
  height:390px;
  position:relative;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid #292d24;
  border-radius:14px;
  background:radial-gradient(circle at 50% 38%,#2b2e25 0,#171a15 52%,#0a0c09 100%);
}
.talent-picker-hover-art img{width:94%;height:94%;object-fit:contain;filter:drop-shadow(0 16px 24px rgba(0,0,0,.58))}
.talent-picker-hover-art .rarity-badge{position:absolute;left:12px;top:12px;z-index:2;font-size:12px!important;padding:7px 11px!important}
.talent-picker-hover-copy{padding:15px 5px 4px}
.talent-picker-hover-copy>small{display:block;color:#858a80;font-size:12px;line-height:1.45;margin-bottom:7px;text-transform:uppercase;letter-spacing:.35px}
.talent-picker-hover-copy>strong{display:block;font-family:Georgia,serif;font-size:28px;line-height:1.16;font-weight:600;color:#eee7d7;margin-bottom:14px}
.talent-picker-hover-label{display:block;color:#a58f58;font-size:10px;font-weight:900;letter-spacing:1.45px;margin-bottom:10px}
.talent-picker-hover-tags{display:flex;flex-wrap:wrap;gap:8px}
.talent-picker-hover-tags i{display:inline-flex;align-items:center;padding:8px 12px;border:1px solid #3b3e32;border-radius:999px;background:#11140f;color:#d9c47e;font-size:12px;font-style:normal;font-weight:850;line-height:1.2}
.talent-picker-hover-tags em{color:#777c72;font-size:12px;font-style:normal}
@media(max-width:760px),(hover:none){.talent-picker-hover-preview{display:none!important}}


/* === Gracebound 0.2.59 · Scroll fiable des emplacements fétiches === */
.talent-dashboard-sockets{overflow:hidden}
.talent-dashboard-sockets .talent-socket-scroll{
  flex:1 1 auto;
  min-height:0;
  max-height:124px;
  margin-top:7px;
  overflow-y:auto;
  overflow-x:hidden;
  padding-right:4px;
  scrollbar-width:thin;
  scrollbar-color:#464236 #11130f;
  overscroll-behavior:contain;
}
.talent-dashboard-sockets .talent-socket-grid{margin-top:0}
.talent-dashboard-sockets .talent-socket-scroll::-webkit-scrollbar{width:6px}
.talent-dashboard-sockets .talent-socket-scroll::-webkit-scrollbar-track{background:#11130f;border-radius:999px}
.talent-dashboard-sockets .talent-socket-scroll::-webkit-scrollbar-thumb{background:#464236;border-radius:999px}
@media(max-width:760px){
  .talent-dashboard-sockets .talent-socket-scroll{max-height:150px}
}

/* === Gracebound 0.2.60 · Navigation groupée + panneaux talents repliables === */
.nav-list-mobile{display:none!important}
@media(min-width:761px){
  .nav-list-desktop{display:flex!important;gap:6px}
  .nav-list-mobile{display:none!important}
  .nav-list-desktop>.nav-item{flex:0 0 auto}
  .nav-group{display:flex;flex-direction:column;gap:3px;flex:0 0 auto}
  .nav-group-toggle{width:100%;height:30px;display:flex;align-items:center;gap:8px;padding:0 9px;border:0;border-radius:9px;background:transparent;color:#777d70;cursor:pointer;text-align:left;font:inherit}
  .nav-group-toggle:hover{background:#151812;color:#c9c3b4}
  .nav-group.has-active>.nav-group-toggle{color:#b9a46d}
  .nav-group-label{font-size:9px;font-weight:900;letter-spacing:1.25px;text-transform:uppercase}
  .nav-group-chevron{margin-left:auto;font-size:14px;line-height:1;color:#777d70;transition:transform .16s ease}
  .nav-group-items{display:flex;flex-direction:column;gap:3px;overflow:hidden}
  .nav-group-items .nav-item{height:42px;padding-left:11px}
  .nav-group-items .nav-icon,.nav-group-items .nav-icon svg{width:19px;height:19px}
  .nav-group.is-collapsed .nav-group-items{display:none}
  .nav-group.is-collapsed .nav-group-chevron{transform:rotate(180deg)}
  .nav-group-event-badge{display:none;margin-left:auto;min-width:34px;height:22px;padding:0 6px 0 5px;border:1px solid rgba(211,181,96,.35);border-radius:11px;background:rgba(184,151,69,.14);align-items:center;justify-content:center;gap:3px;flex:0 0 auto;font-size:9px;font-weight:900;line-height:1;color:#f0d379}
  .nav-group-event-badge b{font:inherit}
  .nav-group.is-collapsed .nav-group-event-badge{display:inline-flex}
  .nav-group.is-collapsed .nav-group-event-badge+.nav-group-chevron{margin-left:0}
}
@media(max-width:760px){
  .nav-list-desktop{display:none!important}
  .nav-list-mobile{display:flex!important}
}

.talent-dashboard-block{position:relative}
.talent-panel-toggle{width:29px;height:29px;display:grid;place-items:center;flex:0 0 29px;padding:0;border:1px solid #34382e;border-radius:8px;background:#11140f;color:#9f926f;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}
.talent-panel-toggle:hover{background:#1a1d17;border-color:#64583d;color:#e1cb86}
.talent-panel-toggle>span{display:block;font-size:15px;line-height:1;transition:transform .16s ease}
.talent-dashboard-block.is-collapsed .talent-panel-toggle>span{transform:rotate(180deg)}
.talent-panel-toggle-corner{position:absolute;top:10px;right:10px;z-index:3}
.talent-panel-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex:0 0 auto}
.talent-panel-head-actions>span{font-size:8px;color:#777b71;white-space:nowrap}
.favorite-card-actions-compact .talent-panel-toggle{height:29px!important;width:29px!important;padding:0!important}

.talent-dashboard-progress .talent-dashboard-title{padding-right:37px}
.talent-dashboard .talent-detail-card{padding-right:46px!important}
.talent-detail-card .talent-panel-toggle-corner{right:10px}
.talent-dashboard-progress.is-collapsed .talent-level-mini,
.talent-dashboard-progress.is-collapsed .talent-xp-bar,
.talent-dashboard-progress.is-collapsed .talent-progress-foot{display:none!important}
.talent-dashboard-progress.is-collapsed .talent-dashboard-title{min-height:30px;align-items:center}
.talent-dashboard-progress.is-collapsed .talent-progress-copy{gap:1px}
.talent-dashboard-progress.is-collapsed .talent-progress-copy span{display:none}

.talent-detail-card.is-collapsed{min-height:0!important}
.talent-detail-card.is-collapsed p,
.talent-detail-card.is-collapsed #unlockTalentButton{display:none!important}
.talent-detail-card.is-collapsed h3{margin-bottom:0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:4px}

.talent-dashboard-favorite.is-collapsed .talent-favorite-compact{display:none!important}
.talent-dashboard-bonuses.is-collapsed .talent-bonus-main-grid,
.talent-dashboard-bonuses.is-collapsed .talent-build-overview,
.talent-dashboard-bonuses.is-collapsed .talent-drop-boost-lines,
.talent-dashboard-bonuses.is-collapsed .talent-build-details{display:none!important}
.talent-dashboard-sockets.is-collapsed .talent-socket-scroll{display:none!important}
.talent-dashboard-block.is-collapsed{padding-top:9px;padding-bottom:9px;min-height:0}
.talent-center-build-tooltip .talent-panel-toggle{display:none!important}

@media(min-width:1151px){
  .talent-dashboard{grid-template-rows:auto auto auto auto minmax(136px,1fr) 52px}
  .talent-dashboard .talent-detail-card:not(.is-collapsed){min-height:132px}
  .talent-dashboard.talent-sockets-collapsed:not(.talent-bonuses-collapsed){grid-template-rows:auto auto auto minmax(136px,1fr) auto 52px}
  .talent-dashboard.talent-sockets-collapsed.talent-bonuses-collapsed{grid-template-rows:auto auto auto auto auto 52px;align-content:start}
}
@media(max-height:760px) and (min-width:1151px){
  .talent-dashboard{grid-template-rows:auto auto auto auto minmax(90px,1fr) 42px}
  .talent-dashboard .talent-detail-card:not(.is-collapsed){min-height:98px}
  .talent-dashboard.talent-sockets-collapsed:not(.talent-bonuses-collapsed){grid-template-rows:auto auto auto minmax(90px,1fr) auto 42px}
  .talent-dashboard.talent-sockets-collapsed.talent-bonuses-collapsed{grid-template-rows:auto auto auto auto auto 42px}
}
@media(max-width:760px){
  .talent-panel-toggle{width:34px;height:34px;flex-basis:34px}
  .talent-panel-toggle-corner{top:12px;right:12px}
  .talent-dashboard-progress .talent-dashboard-title{padding-right:42px}
  .talent-dashboard .talent-detail-card{padding-right:54px!important}
  .talent-panel-head-actions>span{font-size:9px}
}

/* === Reforge 0.2.61 === */
.panel-card{border:1px solid #2b2e25;background:linear-gradient(180deg,rgba(18,21,16,.96),rgba(12,14,11,.98));border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.32)}
.forge-protected-badge{position:absolute;left:9px;bottom:9px;z-index:4;padding:4px 7px;border:1px solid rgba(200,173,106,.48);border-radius:999px;background:rgba(13,14,10,.9);color:var(--gold2);font-size:8px;font-weight:900;letter-spacing:1px;box-shadow:0 5px 16px rgba(0,0,0,.36)}

.reforge-layout{display:grid;grid-template-columns:minmax(760px,1fr) minmax(320px,390px);gap:30px;align-items:start}
.reforge-workbench{padding:28px;overflow:hidden}
.reforge-workbench-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:12px}
.reforge-workbench-head h2,.reforge-tool-head h2,.reforge-rules-card h2{font-family:Georgia,serif;font-size:25px;font-weight:500;margin:0}
.reforge-workbench-head p:not(.eyebrow),.reforge-tool-card>p{margin:8px 0 0;max-width:760px;color:#8d9187;font-size:12px;line-height:1.6}
.reforge-workbench-head p strong,.reforge-tool-card>p strong{color:#e2d29a}
.reforge-wallet{min-width:116px;border:1px solid #393a2d;border-radius:13px;background:#10120e;padding:10px 14px;text-align:right;display:grid;gap:1px}
.reforge-wallet small{font-size:8px;letter-spacing:1.4px;color:#777a70}.reforge-wallet strong{font-family:Georgia,serif;color:var(--gold2);font-size:25px}.reforge-wallet span{font-size:9px;color:#696d64}

.reforge-rarity-bonuses{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:16px 0 12px}
.reforge-rarity-bonus{position:relative;min-width:0;border:1px solid #2e3229;border-radius:12px;background:#10130f;padding:12px 9px 9px;display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center}
.reforge-rarity-bonus .rarity-badge{position:static;margin-bottom:2px}.reforge-rarity-bonus small{font-size:8px;color:#858a80}.reforge-rarity-bonus strong{font-size:13px;color:#e0ce8d}.reforge-rarity-bonus em{font-size:7.5px;color:#74796f;font-style:normal;white-space:nowrap}.reforge-rarity-bonus b{margin-top:3px;font-size:7.5px;color:#9f9270;font-weight:800}
.reforge-talent-boost-note{margin:0 0 14px;border:1px solid rgba(200,173,106,.24);border-radius:10px;background:rgba(200,173,106,.045);padding:9px 11px;color:#8f9389;font-size:9px;text-align:center}.reforge-talent-boost-note strong{color:var(--gold2)}

.reforge-stage{position:relative;min-height:720px;margin:8px 0 22px;border:1px solid #252820;border-radius:18px;background:radial-gradient(circle at 50% 48%,rgba(200,173,106,.09),transparent 24%),radial-gradient(circle at 50% 50%,rgba(75,84,63,.08),transparent 53%),#0d0f0c;overflow:hidden}
.reforge-stage:before,.reforge-stage:after{content:"";position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}
.reforge-stage:before{width:560px;height:560px;border:1px solid rgba(200,173,106,.12);box-shadow:0 0 0 68px rgba(200,173,106,.025),0 0 0 136px rgba(200,173,106,.014)}
.reforge-stage:after{width:390px;height:390px;border:1px dashed rgba(200,173,106,.14)}
.reforge-anvil{position:absolute;left:50%;top:50%;width:310px;height:210px;transform:translate(-50%,-42%);display:flex;align-items:center;justify-content:center;pointer-events:none;opacity:.56;z-index:1}
.reforge-anvil svg{width:100%;height:100%;filter:drop-shadow(0 20px 24px rgba(0,0,0,.6))}.reforge-anvil path{fill:#20241d;stroke:#766b4b;stroke-width:2}.reforge-anvil>span{position:absolute;bottom:8px;color:#74694b;font-size:9px;font-weight:900;letter-spacing:4px}

.reforge-target-slot,.reforge-sacrifice-slot,.reforge-consumable-slot{appearance:none;border:1px dashed #414338;background:linear-gradient(180deg,#151812,#10120f);color:#b9b9ae;cursor:pointer;transition:border-color .18s,transform .18s,box-shadow .18s,background .18s;overflow:hidden}
.reforge-target-slot:hover:not(:disabled),.reforge-sacrifice-slot:hover:not(:disabled),.reforge-consumable-slot:hover:not(:disabled){border-color:#847650;box-shadow:0 0 28px rgba(200,173,106,.09);transform:translateY(-2px)}
.reforge-target-slot{position:absolute;left:50%;top:50%;z-index:5;width:186px;height:250px;transform:translate(-50%,-50%);border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:9px;text-align:center}
.reforge-target-slot:hover:not(:disabled){transform:translate(-50%,-50%) translateY(-2px)}
.reforge-slot-plus{font-family:Georgia,serif;font-size:38px;color:#887a53;line-height:1}.reforge-target-slot>strong{font-size:12px}.reforge-target-slot>small,.reforge-sacrifice-slot>small,.reforge-consumable-slot>small{font-size:9px;color:#72766d}
.reforge-target-slot.has-card,.reforge-sacrifice-slot.has-card,.reforge-consumable-slot.has-card{border-style:solid;background:#11140f;padding:7px}
.reforge-target-slot.has-card img{width:100%;height:165px;object-fit:contain;border-radius:10px;background:#090b08}.reforge-target-slot.has-card>strong{font-size:11px;line-height:1.2;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reforge-target-slot .rarity-badge{position:absolute;top:8px;left:8px}.reforge-card-level{position:absolute;right:8px;top:8px;border:1px solid rgba(200,173,106,.5);background:#11130f;color:var(--gold2);border-radius:999px;padding:4px 7px;font-weight:900;font-size:10px}

.reforge-sacrifice-slot{position:absolute;z-index:4;width:124px;height:166px;border-radius:15px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:7px;text-align:center}
.reforge-sacrifice-slot{transform:translate(-50%,-50%)}.reforge-sacrifice-slot:hover:not(:disabled){transform:translate(-50%,-50%) translateY(-2px)}.reforge-sacrifice-slot-1{left:50%;top:12%}.reforge-sacrifice-slot-2{left:82%;top:37%}.reforge-sacrifice-slot-3{left:70%;top:80%}.reforge-sacrifice-slot-4{left:30%;top:80%}.reforge-sacrifice-slot-5{left:18%;top:37%}
.reforge-sacrifice-slot.has-card img{width:100%;height:102px;object-fit:contain;border-radius:9px;background:#090b08}.reforge-sacrifice-slot.has-card>strong{font-size:9px;line-height:1.15;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reforge-sacrifice-slot .rarity-badge{position:absolute;top:6px;left:6px;font-size:8px}.reforge-sacrifice-value{position:absolute;right:5px;top:5px;padding:3px 5px;border-radius:999px;background:#18170f;border:1px solid rgba(200,173,106,.35);color:var(--gold2);font-size:7px;font-weight:900}
.reforge-sacrifice-slot.is-sealed{border-style:solid;border-color:#34372d;background:radial-gradient(circle,rgba(200,173,106,.07),transparent 60%),#10120f;cursor:default;opacity:.74}.reforge-sealed-mark{font-size:27px;color:#776b4b}.reforge-sacrifice-slot.is-locked{border-style:solid;border-color:#242820;background:#0b0d0a;opacity:.42;filter:saturate(.35)}.reforge-lock-mark{font-size:25px;color:#555b50}.reforge-sacrifice-slot.is-locked small{max-width:86px;line-height:1.25}.reforge-sacrifice-slot:disabled{cursor:default;opacity:.5}

.reforge-target-summary{border:1px solid #2d3027;background:#10120f;border-radius:14px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:82px}
.reforge-target-summary>div:first-child,.reforge-target-summary-card{display:flex;flex-direction:column;gap:3px}.reforge-target-summary small{font-size:8px;color:#857958;letter-spacing:1.3px}.reforge-target-summary strong{font-size:14px}.reforge-target-summary span{color:#74786f;font-size:10px}
.reforge-affinity-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.reforge-affinity-chips>span{border:1px solid #36392f;border-radius:999px;background:#151812;color:#b5b5aa;padding:4px 8px;font-size:8px}.reforge-affinity-chips .reforge-enchant-chip{border-color:rgba(200,173,106,.42);color:var(--gold2)}
.reforge-target-stats{display:grid;grid-template-columns:repeat(3,minmax(78px,1fr));gap:7px}.reforge-target-stats>span{border-left:1px solid #2b2e26;padding-left:11px;display:flex;flex-direction:column;gap:3px}.reforge-target-stats strong{color:#ded09a;font-size:13px}.reforge-target-stats small{font-size:7px;letter-spacing:0;color:#6e7269}
.reforge-power-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:10px 0}.reforge-power-strip>div{border:1px solid #2d3027;background:#10120f;border-radius:12px;padding:10px 12px;display:flex;justify-content:space-between;align-items:center;gap:8px}.reforge-power-strip small{color:#777b72;font-size:9px}.reforge-power-strip strong{color:var(--gold2);font-size:13px}.reforge-main-action{width:100%;height:49px}.reforge-danger-note{text-align:center;margin:8px 0 0;color:#787b72;font-size:9px}.reforge-danger-note strong{color:#b97862}

.reforge-side-column{display:grid;gap:16px}.reforge-tool-card,.reforge-rules-card{padding:19px}.reforge-tool-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:7px}.reforge-level-badge,.reforge-enchant-badge{border:1px solid #484334;background:#17170f;color:var(--gold2);border-radius:999px;min-width:50px;padding:6px 10px;text-align:center;font-size:11px;font-weight:900}.reforge-enchant-badge{max-width:115px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.reforge-consumable-slot{width:100%;height:130px;margin:14px 0 10px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;position:relative;padding:9px}.reforge-consumable-slot.has-card{display:grid;grid-template-columns:84px 1fr;grid-template-rows:auto auto;column-gap:12px;text-align:left;align-items:center}.reforge-consumable-slot.has-card img{grid-row:1/3;width:84px;height:104px;object-fit:contain;background:#090b08;border-radius:9px}.reforge-consumable-slot.has-card>strong{font-size:11px;align-self:end}.reforge-consumable-slot.has-card>small,.reforge-consumable-slot.has-card>.reforge-book-effect{font-size:9px;color:#8d9187;align-self:start}.reforge-consumable-slot .rarity-badge{position:absolute;left:7px;top:7px}.reforge-book-effect{color:var(--gold2)!important;font-weight:800}.reforge-cost-line{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #292c24;padding:10px 0;color:#777b72;font-size:9px}.reforge-cost-line strong{color:#d7c98e}.reforge-tool-card>.btn{width:100%}
.reforge-rules-card ul{margin:12px 0 0;padding-left:18px;display:grid;gap:7px;color:#84887e;font-size:10px;line-height:1.45}.reforge-rules-card li::marker{color:#8f7f54}

@media(max-width:1350px){.reforge-layout{grid-template-columns:minmax(660px,1fr) 320px;gap:22px}.reforge-stage{min-height:680px}.reforge-sacrifice-slot{width:112px;height:154px}.reforge-sacrifice-slot.has-card img{height:91px}.reforge-rarity-bonuses{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1050px){.reforge-layout{grid-template-columns:1fr}.reforge-side-column{grid-template-columns:repeat(2,minmax(0,1fr))}.reforge-rules-card{grid-column:1/-1}}
@media(max-width:760px){.reforge-workbench{padding:14px}.reforge-workbench-head{flex-direction:column}.reforge-wallet{width:100%;text-align:left;grid-template-columns:auto 1fr auto;align-items:end}.reforge-rarity-bonuses{grid-template-columns:repeat(2,1fr)}.reforge-stage{min-height:790px}.reforge-stage:before{width:350px;height:350px}.reforge-stage:after{width:270px;height:270px}.reforge-target-slot{width:150px;height:210px;top:50%}.reforge-target-slot.has-card img{height:140px}.reforge-anvil{width:240px;top:50%}.reforge-sacrifice-slot{width:104px;height:142px}.reforge-sacrifice-slot-1{left:50%;top:10%}.reforge-sacrifice-slot-2{left:82%;top:35%}.reforge-sacrifice-slot-3{left:70%;top:82%}.reforge-sacrifice-slot-4{left:30%;top:82%}.reforge-sacrifice-slot-5{left:18%;top:35%}.reforge-sacrifice-slot.has-card img{height:80px}.reforge-target-summary{align-items:flex-start;flex-direction:column}.reforge-target-stats{width:100%;grid-template-columns:repeat(3,1fr)}.reforge-power-strip{grid-template-columns:1fr}.reforge-side-column{grid-template-columns:1fr}.reforge-rules-card{grid-column:auto}}

.reforge-card-picker .card-picker-toolbar{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){.reforge-card-picker .card-picker-toolbar{grid-template-columns:1fr}}


.reforge-view-switch{display:flex;gap:10px;padding:10px;margin-bottom:16px;align-items:center}
.reforge-view-tab{display:inline-flex;align-items:center;justify-content:center;min-width:150px;padding:12px 18px;border-radius:12px;border:1px solid #2b2e26;background:#121510;color:#aeb39f;font-weight:800;text-decoration:none;transition:.15s ease}
.reforge-view-tab:hover{border-color:#6b5d33;color:#e6dbb5}
.reforge-view-tab.is-active{background:linear-gradient(180deg,#b89b58,#7d6736);border-color:#c8ad6a;color:#16140f;box-shadow:0 10px 25px rgba(0,0,0,.24),0 0 0 1px rgba(200,173,106,.18) inset}
.reforge-tool-card.is-highlighted{box-shadow:0 0 0 1px rgba(200,173,106,.28) inset,0 18px 34px rgba(0,0,0,.24)}
.reforge-order-note{margin-bottom:12px;padding:10px 12px;border:1px solid rgba(200,173,106,.18);border-radius:12px;background:rgba(200,173,106,.05);color:#b9b39c;font-size:12px;line-height:1.45}
@media(max-width:760px){.reforge-view-switch{flex-wrap:wrap}.reforge-view-tab{flex:1 1 100%}}


/* Gracebound 0.2.71 — Enchantement par graisse */
.enchant-workspace{padding:26px;max-width:1180px;margin:0 auto}
.enchant-workspace-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding-bottom:18px;border-bottom:1px solid #2a2e25}
.enchant-workspace-head h2{margin:3px 0 7px;font-size:30px}.enchant-workspace-head p:not(.eyebrow){max-width:720px;margin:0;color:#969b8f;line-height:1.55;font-size:12px}
.enchant-flow{display:grid;grid-template-columns:minmax(220px,1fr) 110px minmax(220px,1fr);align-items:center;gap:26px;max-width:850px;margin:38px auto 24px}
.enchant-flow-column{display:flex;flex-direction:column;align-items:center;gap:9px}.enchant-flow-column>small{font-size:9px;letter-spacing:1.25px;color:#8e8464;font-weight:900}
.enchant-big-slot{width:min(280px,100%)!important;height:350px!important;margin:0!important;border-radius:20px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:10px!important;padding:18px!important;text-align:center!important}
.enchant-big-slot.has-card{display:flex!important}.enchant-big-slot.has-card img{width:auto!important;height:230px!important;max-width:90%!important;object-fit:contain!important;background:transparent!important}.enchant-big-slot.has-card>strong{font-size:13px!important;align-self:center!important}.enchant-big-slot.has-card .reforge-book-effect{font-size:11px!important;align-self:center!important}
.enchant-flow-arrow{display:flex;flex-direction:column;align-items:center;gap:4px;color:#bca35f}.enchant-flow-arrow span{font-size:58px;line-height:1}.enchant-flow-arrow small{font-size:8px;letter-spacing:1.3px;font-weight:900}
.enchant-target-summary{max-width:850px;margin:0 auto 14px}
.enchant-preview-card{max-width:850px;margin:0 auto 16px;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.enchant-preview-card>div{padding:13px 14px;border:1px solid #2c3027;border-radius:12px;background:#0f120e;display:flex;flex-direction:column;gap:4px}.enchant-preview-card small{font-size:8px;color:#767c70;letter-spacing:.8px}.enchant-preview-card strong{font-size:15px;color:#d8c178}
.enchant-main-action{display:block;width:min(520px,100%);margin:0 auto 8px;height:48px}
.enchant-workspace>.reforge-danger-note{text-align:center}
.enchant-grease-guide{margin-top:28px;padding-top:22px;border-top:1px solid #2a2e25}.enchant-guide-head h3{margin:2px 0 14px;font-size:20px}.enchant-grease-guide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}.enchant-grease-guide-grid>div{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:3px 10px;padding:10px 12px;border:1px solid #282d24;border-radius:10px;background:#10130f}.enchant-grease-guide-grid span{font-size:10px;font-weight:800;grid-column:1}.enchant-grease-guide-grid small{font-size:9px;color:#8d9286;grid-column:1}.enchant-grease-guide-grid strong{grid-column:2;grid-row:1/3;align-self:center;color:#dbc675;font-size:13px}
@media(max-width:760px){.enchant-workspace{padding:16px}.enchant-workspace-head{flex-direction:column}.enchant-flow{grid-template-columns:1fr;gap:14px;margin-top:24px}.enchant-flow-arrow{transform:rotate(90deg)}.enchant-big-slot{height:300px!important}.enchant-preview-card{grid-template-columns:1fr}.enchant-grease-guide-grid{grid-template-columns:1fr}}


/* === Gracebound 0.2.72 · Boutique Forge & Enchantement === */
.shop-forge-section{margin:0 0 16px;padding:20px}
.shop-forge-heading{align-items:center;gap:18px}.shop-forge-heading p{margin:6px 0 0;color:#858a7f;font-size:12px}.shop-forge-links{display:flex;gap:8px;flex-wrap:wrap}
.shop-consumable-group{margin-top:14px;border:1px solid #292d25;border-radius:14px;background:#0d100c;overflow:hidden}
.shop-consumable-group>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;cursor:pointer;list-style:none;background:#11140f;border-bottom:1px solid transparent}.shop-consumable-group[open]>summary{border-bottom-color:#292d25}.shop-consumable-group>summary::-webkit-details-marker{display:none}.shop-consumable-group>summary span{font-family:Georgia,serif;font-size:20px;color:#e8dfcb}.shop-consumable-group>summary small{color:#878c80;font-size:10px}
.shop-consumable-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px;max-height:650px;overflow:auto;scrollbar-width:thin;scrollbar-color:#4a4638 #11130f}
.shop-consumable-card{min-width:0;display:grid;grid-template-columns:74px minmax(0,1fr);grid-template-rows:1fr auto;gap:10px 12px;padding:10px;border:1px solid #292d25;border-radius:12px;background:linear-gradient(145deg,#121510,#0d0f0c)}
.shop-consumable-art{position:relative;grid-row:1/3;width:74px;height:92px;border-radius:9px;background:#090b08;display:grid;place-items:center;overflow:hidden}.shop-consumable-art img{width:100%;height:100%;object-fit:contain}.shop-consumable-art .rarity-badge{position:absolute;left:4px;top:4px;z-index:2}
.shop-consumable-copy{min-width:0;display:flex;flex-direction:column;gap:3px}.shop-consumable-copy strong{font-size:11px;color:#e2dccf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shop-consumable-copy span{font-size:9px;color:#c8ad6a}.shop-consumable-copy em{font-style:normal;font-size:9px;color:#9ebc88}.shop-consumable-copy small{font-size:8px;color:#7f8479}.shop-consumable-card .btn{grid-column:2;height:32px!important;padding:0 9px!important;font-size:9px!important}
.shop-grease-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) minmax(180px,260px);gap:10px;padding:12px 14px 0}.shop-grease-toolbar .search-field{min-width:0}.shop-forge-section .no-filter-results{display:none;margin:0 14px 14px}.shop-forge-section .no-filter-results.visible{display:block}
@media(max-width:1400px){.shop-consumable-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1050px){.shop-consumable-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.shop-consumable-grid{grid-template-columns:1fr;max-height:560px}.shop-grease-toolbar{grid-template-columns:1fr}.shop-consumable-group>summary{align-items:flex-start;flex-direction:column;gap:4px}.shop-forge-heading{align-items:flex-start;flex-direction:column}}


/* 0.2.80 — cartes forgées visibles/prioritaires dans les Emplacements fétiches */
.talent-picker-forge-badge{position:absolute;right:7px;top:7px;z-index:5;display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border:1px solid rgba(200,173,106,.5);border-radius:999px;background:rgba(24,21,13,.94);color:#e6cc83;font-size:8px;font-weight:900;letter-spacing:.5px;box-shadow:0 5px 15px rgba(0,0,0,.35)}
.talent-picker-forge-info{display:block;margin-top:5px;color:#d3b96d;font-size:8.5px;font-weight:800;line-height:1.3}


/* Gracebound 0.2.81 — exemplaire forgé distinct des doublons non forgés */
.talent-picker-base-badge{position:absolute;right:7px;top:7px;z-index:5;display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border:1px solid rgba(151,158,145,.34);border-radius:999px;background:rgba(17,20,16,.94);color:#aeb5a6;font-size:8px;font-weight:900;letter-spacing:.45px;box-shadow:0 5px 15px rgba(0,0,0,.3)}
.talent-socket-chip{position:relative}.talent-socket-forge-level{position:absolute;right:3px;bottom:3px;z-index:3;min-width:22px;height:18px;padding:0 5px;display:grid;place-items:center;border-radius:999px;border:1px solid rgba(200,173,106,.5);background:rgba(24,21,13,.94);color:#e6cc83;font-size:8px;font-weight:900;line-height:1}

/* Gracebound 0.2.82 — recyclage paginé + filtres éléments/afflictions */
.duplicate-recycle-panel{
    width:min(1420px,97vw);
    height:min(900px,92vh);
    grid-template-rows:auto auto minmax(0,1fr) auto auto;
}
.duplicate-recycle-tools-foot{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}
.duplicate-recycle-tools-foot small{color:#72786d;font-size:10px}
.duplicate-recycle-tools-foot .duplicate-recycle-summary{margin-left:auto;flex:0 0 auto}
.duplicate-recycle-grid{
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    grid-template-columns:repeat(4,minmax(220px,1fr));
    grid-auto-rows:max-content;
    align-content:start;
    gap:14px;
    padding:16px 18px;
    scrollbar-gutter:stable;
}
.duplicate-recycle-card{min-height:360px;align-self:start}
.duplicate-recycle-image-wrap{height:245px;aspect-ratio:auto;flex:0 0 245px}
.duplicate-recycle-card-info strong{white-space:normal;overflow:visible;text-overflow:clip;font-size:12px;line-height:1.25}
.duplicate-recycle-card-info span{font-size:9.5px;line-height:1.3}
.duplicate-recycle-affinities{display:flex;flex-wrap:wrap;gap:4px;margin:1px 0 2px}
.duplicate-recycle-affinities i{
    display:inline-flex;align-items:center;min-height:20px;padding:3px 7px;
    border:1px solid rgba(200,173,106,.23);border-radius:999px;
    background:rgba(200,173,106,.07);color:#d6c482;font-size:8px;font-style:normal;font-weight:800
}
.duplicate-recycle-pagination{
    display:grid;grid-template-columns:auto minmax(100px,1fr) auto;align-items:center;
    gap:12px;padding:10px 18px;border-top:1px solid #242821;background:#0d100c
}
.duplicate-recycle-pagination.is-hidden{display:none}
.duplicate-recycle-pagination strong{justify-self:center;color:#b9b6aa;font-size:11px}
.duplicate-recycle-pagination .btn{min-width:128px;height:36px}
@media(max-width:1180px){.duplicate-recycle-grid{grid-template-columns:repeat(3,minmax(210px,1fr))}}
@media(max-width:880px){
    .duplicate-recycle-grid{grid-template-columns:repeat(2,minmax(190px,1fr))}
    .duplicate-recycle-tools-foot{align-items:flex-start;flex-direction:column;gap:5px}
    .duplicate-recycle-tools-foot .duplicate-recycle-summary{margin-left:0}
}
@media(max-width:560px){
    .duplicate-recycle-grid{grid-template-columns:1fr}
    .duplicate-recycle-card{min-height:0;display:grid;grid-template-columns:110px minmax(0,1fr)}
    .duplicate-recycle-image-wrap{height:145px;grid-row:1}
    .duplicate-recycle-card-info{grid-column:2;grid-row:1}
    .duplicate-recycle-pagination{grid-template-columns:1fr 1fr}
    .duplicate-recycle-pagination strong{grid-column:1/-1;grid-row:1}
    .duplicate-recycle-pagination .btn{min-width:0;width:100%}
}


/* === Gracebound 0.2.86 · Emplacements visibles + auto-équipement === */
.talent-dashboard-sockets{overflow:visible}
.talent-dashboard-sockets .talent-socket-scroll{
  flex:none;
  max-height:none!important;
  overflow:visible!important;
  padding-right:0;
}
.talent-dashboard-sockets .talent-socket-grid{
  grid-template-columns:repeat(7,minmax(0,1fr));
  gap:6px;
}
.talent-socket-head-actions{gap:7px;flex-wrap:wrap;justify-content:flex-end}
.talent-auto-equip-button{height:30px!important;padding:0 10px!important;font-size:9px!important;white-space:nowrap}

.talent-auto-equip-modal{position:fixed;inset:0;z-index:220;display:none;align-items:center;justify-content:center;padding:24px}
.talent-auto-equip-modal.visible{display:flex}
.talent-auto-equip-modal>.modal-backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(4,6,4,.8);backdrop-filter:blur(8px);cursor:default}
.talent-auto-equip-dialog{position:relative;z-index:1;width:min(860px,94vw);max-height:min(780px,90vh);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden;border:1px solid rgba(200,173,106,.32);border-radius:18px;background:linear-gradient(180deg,#12150f,#0b0e0a);box-shadow:0 28px 90px rgba(0,0,0,.72)}
.talent-auto-equip-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 17px;border-bottom:1px solid #282c24}
.talent-auto-equip-head small{display:block;color:#a58f58;font-size:9px;font-weight:900;letter-spacing:1.6px;margin-bottom:4px}
.talent-auto-equip-head h2{margin:0;color:#eee7d8;font-family:Georgia,serif;font-size:28px;font-weight:600}
.talent-auto-equip-head p{max-width:650px;margin:7px 0 0;color:#858b80;font-size:11px;line-height:1.45}
.talent-auto-equip-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 24px;border-bottom:1px solid #23271f}
.talent-auto-equip-toolbar strong{color:#d7c47f;font-size:11px;white-space:nowrap}
.talent-auto-equip-stats{min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-content:start;gap:8px;padding:16px 24px;scrollbar-width:thin;scrollbar-color:#4b4638 #11130f}
.talent-auto-equip-stat{min-width:0;display:flex;align-items:center;gap:10px;min-height:54px;padding:9px 11px;border:1px solid #2d3129;border-radius:12px;background:#0f120e;cursor:pointer;transition:.15s}
.talent-auto-equip-stat:hover{border-color:#62583d;background:#131610}
.talent-auto-equip-stat.is-selected{border-color:#a78b4e;background:rgba(200,173,106,.09);box-shadow:0 0 0 1px rgba(200,173,106,.12) inset}
.talent-auto-equip-stat input{width:18px;height:18px;accent-color:#b89b58;flex:0 0 auto}
.talent-auto-equip-stat>span{min-width:0;display:flex;flex-direction:column;gap:2px}
.talent-auto-equip-stat b{color:#ddd6c5;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.talent-auto-equip-stat small{color:#747a70;font-size:8px}
.talent-auto-equip-empty{grid-column:1/-1;padding:30px;text-align:center;color:#747a70}
.talent-auto-equip-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 24px;border-top:1px solid #282c24;background:#0d100c}
.talent-auto-equip-footer>span{color:#7d8378;font-size:9px;line-height:1.35}
.talent-auto-equip-footer>div{display:flex;gap:8px;flex:0 0 auto}
@media(max-width:1150px){.talent-dashboard-sockets .talent-socket-grid{grid-template-columns:repeat(7,minmax(0,1fr))}}
@media(max-width:760px){
  .talent-dashboard-sockets .talent-socket-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .talent-auto-equip-modal{padding:10px}
  .talent-auto-equip-dialog{max-height:92vh}
  .talent-auto-equip-toolbar{grid-template-columns:1fr;padding:12px 14px}
  .talent-auto-equip-stats{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px 14px}
  .talent-auto-equip-head{padding:16px 14px}
  .talent-auto-equip-footer{align-items:stretch;flex-direction:column;padding:12px 14px}
  .talent-auto-equip-footer>div{display:grid;grid-template-columns:1fr 1fr}
}


/* 0.2.87 · Polissage / Alchimie */
.polish-workspace {
  display: grid;
  gap: 18px;
}
.polish-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.polish-stage {
  display: grid;
  grid-template-columns: minmax(260px, 320px) 1fr;
  gap: 24px;
  align-items: center;
}
.polish-target-wrap {
  display: grid;
  gap: 10px;
}
.polish-target-slot {
  min-height: 240px;
}
.polish-body-grid {
  position: relative;
  min-height: 420px;
  border: 1px solid rgba(212, 184, 101, 0.18);
  border-radius: 28px;
  background: radial-gradient(circle at center, rgba(212, 184, 101, 0.08), rgba(0,0,0,0) 60%), rgba(255,255,255,0.015);
  overflow: hidden;
}
.polish-silhouette {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}
.polish-silhouette::before {
  content: '';
  width: 44%;
  height: 74%;
  border-radius: 46% 46% 40% 40% / 22% 22% 48% 48%;
  border: 1px solid rgba(212, 184, 101, 0.13);
  box-shadow: inset 0 0 0 999px rgba(212, 184, 101, 0.03);
}
.polish-silhouette span {
  position: absolute;
  font-size: 2.3rem;
  letter-spacing: 0.5rem;
  color: rgba(212, 184, 101, 0.08);
  transform: rotate(-12deg);
  user-select: none;
}
.polish-sacrifice-slot {
  position: absolute;
  width: 160px;
  min-height: 140px;
}
.polish-sacrifice-slot-1 { top: 16px; left: 50%; transform: translateX(-50%); }
.polish-sacrifice-slot-2 { top: 142px; left: 16px; }
.polish-sacrifice-slot-3 { top: 132px; left: 50%; transform: translateX(-50%); }
.polish-sacrifice-slot-4 { top: 142px; right: 16px; }
.polish-sacrifice-slot-5 { bottom: 20px; left: 50%; transform: translateX(-50%); }
.is-alchemy .polish-body-grid { min-height: 290px; }
.is-alchemy .polish-sacrifice-slot { width: 180px; min-height: 130px; }
.is-alchemy .polish-sacrifice-slot-1 { top: 24px; left: 28px; transform: none; }
.is-alchemy .polish-sacrifice-slot-2 { top: 24px; right: 28px; left: auto; }
.is-alchemy .polish-sacrifice-slot-3 { bottom: 24px; left: 50%; transform: translateX(-50%); }
.is-alchemy .polish-sacrifice-slot-4,
.is-alchemy .polish-sacrifice-slot-5 { display: none; }
@media (max-width: 980px) {
  .polish-stage { grid-template-columns: 1fr; }
  .polish-target-slot { min-height: 180px; }
}
.polish-silhouette img{
  position:absolute;
  width:54%;
  height:82%;
  object-fit:contain;
  opacity:.09;
  filter:saturate(.55) sepia(.2) brightness(.9);
  pointer-events:none;
}
.polish-silhouette img + span{opacity:.35}


/* 0.2.89 · Talents sidebar cleanup + centre aura + Polissage/Alchimie layout fix */
.talent-dashboard .talent-sidebar-summary-source{display:none!important}
.talent-tree-page .talent-dashboard{grid-template-rows:auto minmax(118px,auto) auto minmax(112px,1fr) 46px}
@media(min-width:1401px){.talent-tree-page .talent-dashboard{grid-template-rows:auto minmax(132px,auto) auto minmax(136px,1fr) 52px}}
@media(max-width:1400px) and (min-width:1151px){.talent-tree-page .talent-dashboard{grid-template-rows:auto auto auto minmax(136px,1fr) 52px}.talent-tree-page .talent-dashboard.talent-sockets-collapsed{grid-template-rows:auto auto auto auto 52px;align-content:start}}
@media(max-width:1150px) and (min-width:761px){.talent-tree-page .talent-dashboard{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto minmax(136px,1fr) 52px}.talent-tree-page .talent-dashboard-sockets{grid-column:1/-1}.talent-tree-page .talent-reset-button-dashboard{grid-column:1/-1}}
@media(max-width:760px){.talent-tree-page .talent-dashboard{grid-template-columns:1fr;grid-template-rows:auto auto auto auto}.talent-tree-page .talent-reset-button-dashboard{grid-column:auto}}

.talent-node.is-center{position:absolute;overflow:visible;isolation:isolate}
.talent-node.is-center::before,.talent-node.is-center::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none;z-index:-1}
.talent-node.is-center::before{width:150px;height:150px;background:radial-gradient(circle,rgba(222,194,114,.36) 0%,rgba(222,194,114,.16) 34%,rgba(222,194,114,.06) 58%,rgba(222,194,114,0) 74%);filter:blur(2px);animation:talentCenterAura 3.1s ease-in-out infinite}
.talent-node.is-center::after{width:220px;height:220px;border:1px solid rgba(222,194,114,.18);box-shadow:0 0 0 22px rgba(222,194,114,.04),0 0 52px rgba(222,194,114,.12) inset;animation:talentCenterRing 4.2s ease-in-out infinite}
@keyframes talentCenterAura{0%,100%{opacity:.78;transform:translate(-50%,-50%) scale(.96)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}}
@keyframes talentCenterRing{0%,100%{opacity:.48;transform:translate(-50%,-50%) scale(.95)}50%{opacity:.9;transform:translate(-50%,-50%) scale(1.03)}}

.polish-workspace{gap:22px}
.polish-stage{display:grid;grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:28px;align-items:stretch}
.polish-target-wrap{display:grid;gap:12px;align-self:stretch;min-width:0}
.polish-target-slot{position:relative!important;left:auto!important;top:auto!important;transform:none!important;inset:auto!important;z-index:3;width:100%;height:100%;min-height:330px;max-width:none;padding:14px 12px;border-radius:22px}
.polish-target-slot:hover:not(:disabled){transform:translateY(-2px)!important}
.polish-target-slot.has-card img{height:230px;object-fit:contain}
.polish-target-slot>strong{font-size:14px;line-height:1.25}
.polish-target-slot>small{font-size:10px}
.polish-body-grid{min-height:470px;padding:26px 28px 24px}
.polish-silhouette{z-index:1}
.polish-silhouette::before{width:min(58%,420px);height:80%}
.polish-silhouette img{width:min(56%,430px);height:82%;opacity:.08}
.polish-sacrifice-slot{z-index:2;width:170px;min-height:146px;padding:10px 8px;transform:none!important}
.polish-sacrifice-slot:hover:not(:disabled){transform:translateY(-2px)!important}
.polish-sacrifice-slot-1{top:18px;left:50%;transform:translateX(-50%)!important}
.polish-sacrifice-slot-2{top:146px;left:18px}
.polish-sacrifice-slot-3{top:146px;left:50%;transform:translateX(-50%)!important}
.polish-sacrifice-slot-4{top:146px;right:18px}
.polish-sacrifice-slot-5{bottom:18px;left:50%;transform:translateX(-50%)!important}
.is-alchemy .polish-body-grid{min-height:330px}
.is-alchemy .polish-silhouette::before{width:min(72%,540px);height:62%;border-radius:999px}
.is-alchemy .polish-sacrifice-slot{width:190px;min-height:132px}
.is-alchemy .polish-sacrifice-slot-1{top:26px;left:24px;transform:none!important}
.is-alchemy .polish-sacrifice-slot-2{top:26px;right:24px;left:auto;transform:none!important}
.is-alchemy .polish-sacrifice-slot-3{bottom:28px;left:50%;transform:translateX(-50%)!important}
.is-alchemy .polish-sacrifice-slot-4,.is-alchemy .polish-sacrifice-slot-5{display:none}
@media(max-width:1280px){.polish-stage{grid-template-columns:1fr}.polish-target-slot{min-height:230px}.polish-target-slot.has-card img{height:170px}.polish-body-grid{min-height:500px}}
@media(max-width:760px){.polish-body-grid{min-height:540px;padding:18px}.polish-target-slot{min-height:210px}.polish-sacrifice-slot{width:146px;min-height:124px}.polish-sacrifice-slot-2{top:166px;left:8px}.polish-sacrifice-slot-4{top:166px;right:8px}.is-alchemy .polish-body-grid{min-height:360px}.is-alchemy .polish-sacrifice-slot{width:150px}.is-alchemy .polish-sacrifice-slot-1{left:8px;top:18px}.is-alchemy .polish-sacrifice-slot-2{right:8px;top:18px}}

.talent-tree-page .talent-dashboard.talent-bonuses-collapsed{grid-template-rows:auto minmax(118px,auto) auto minmax(112px,1fr) 46px}
@media(min-width:1401px){.talent-tree-page .talent-dashboard.talent-bonuses-collapsed{grid-template-rows:auto minmax(132px,auto) auto minmax(136px,1fr) 52px}}
@media(max-width:1400px) and (min-width:1151px){.talent-tree-page .talent-dashboard.talent-bonuses-collapsed,.talent-tree-page .talent-dashboard.talent-sockets-collapsed,.talent-tree-page .talent-dashboard.talent-sockets-collapsed.talent-bonuses-collapsed{grid-template-rows:auto auto auto minmax(136px,1fr) 52px;align-content:stretch}}
@media(max-width:1150px) and (min-width:761px){.talent-tree-page .talent-dashboard.talent-bonuses-collapsed,.talent-tree-page .talent-dashboard.talent-sockets-collapsed,.talent-tree-page .talent-dashboard.talent-sockets-collapsed.talent-bonuses-collapsed{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto auto minmax(136px,1fr) 52px}}
@media(max-width:760px){.talent-tree-page .talent-dashboard.talent-bonuses-collapsed,.talent-tree-page .talent-dashboard.talent-sockets-collapsed,.talent-tree-page .talent-dashboard.talent-sockets-collapsed.talent-bonuses-collapsed{grid-template-columns:1fr;grid-template-rows:auto auto auto auto}}


/* 0.2.90 · Refonte ciblée de la page Polissage */
.polish-workspace.is-polish{gap:24px}
.polish-workspace.is-polish .polish-armor-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:26px;align-items:stretch}
.polish-workspace.is-polish .polish-armor-target-column{display:grid;grid-template-rows:auto 1fr;gap:12px;min-width:0}
.polish-workspace.is-polish .polish-armor-target-head{display:grid;gap:4px;padding:8px 4px 0}
.polish-workspace.is-polish .polish-armor-target-head small{font-size:11px;letter-spacing:1.1px;color:#bca56a;font-weight:800}
.polish-workspace.is-polish .polish-armor-target-head span{font-size:12px;color:#8f9387;line-height:1.4}
.polish-workspace.is-polish .polish-armor-target-slot{position:relative!important;inset:auto!important;left:auto!important;top:auto!important;transform:none!important;width:100%;min-height:420px;max-width:none;z-index:2;border-radius:24px;padding:16px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center}
.polish-workspace.is-polish .polish-armor-target-slot:hover:not(:disabled){transform:translateY(-2px)!important}
.polish-workspace.is-polish .polish-armor-target-slot.has-card img{width:100%;height:285px;object-fit:contain;border-radius:12px;background:#090b08}
.polish-workspace.is-polish .polish-armor-target-slot.has-card>strong{max-width:100%;white-space:normal;font-size:14px;line-height:1.25}
.polish-workspace.is-polish .polish-armor-target-slot>strong{font-size:16px;line-height:1.25}
.polish-workspace.is-polish .polish-armor-target-slot>small{font-size:11px}
.polish-workspace.is-polish .polish-armor-stage{display:grid;grid-template-rows:auto 1fr;gap:12px;min-width:0}
.polish-workspace.is-polish .polish-armor-stage-head{min-height:40px;padding:10px 14px;border:1px solid rgba(212,184,101,.14);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.02));font-size:12px;color:#9a9e92;display:flex;align-items:center;justify-content:center;text-align:center}
.polish-workspace.is-polish .polish-armor-stage-head strong{color:var(--gold2)}
.polish-workspace.is-polish .polish-armor-board{position:relative;min-height:620px;padding:24px;border:1px solid rgba(212,184,101,.18);border-radius:28px;background:radial-gradient(circle at 50% 50%,rgba(212,184,101,.09),rgba(255,255,255,0) 40%),radial-gradient(circle at 50% 60%,rgba(212,184,101,.04),rgba(255,255,255,0) 68%),rgba(255,255,255,.015);overflow:hidden;isolation:isolate}
.polish-workspace.is-polish .polish-armor-board::before,.polish-workspace.is-polish .polish-armor-board::after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none}
.polish-workspace.is-polish .polish-armor-board::before{width:380px;height:470px;border:1px solid rgba(212,184,101,.10);box-shadow:0 0 0 36px rgba(212,184,101,.025)}
.polish-workspace.is-polish .polish-armor-board::after{width:250px;height:250px;background:radial-gradient(circle,rgba(212,184,101,.08),rgba(212,184,101,0) 68%)}
.polish-workspace.is-polish .polish-silhouette{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:1}
.polish-workspace.is-polish .polish-silhouette::before{content:"";position:absolute;width:min(44%,330px);height:74%;border-radius:46% 46% 40% 40% / 18% 18% 48% 48%;border:1px solid rgba(212,184,101,.12);box-shadow:inset 0 0 0 999px rgba(212,184,101,.02)}
.polish-workspace.is-polish .polish-silhouette img{position:absolute;width:min(42%,300px);height:78%;object-fit:contain;opacity:.12;filter:saturate(.6) sepia(.18) brightness(.95)}
.polish-workspace.is-polish .polish-silhouette span{position:absolute;font-size:3rem;letter-spacing:.45rem;color:rgba(212,184,101,.07);transform:rotate(-12deg);user-select:none}
.polish-workspace.is-polish .polish-armor-slot{position:absolute;z-index:2;width:180px;min-height:150px;padding:10px 8px;border-radius:18px;transform:none!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center}
.polish-workspace.is-polish .polish-armor-slot:hover:not(:disabled){transform:translateY(-2px)!important}
.polish-workspace.is-polish .polish-armor-slot.has-card img{width:100%;height:94px;object-fit:contain;border-radius:10px;background:#090b08}
.polish-workspace.is-polish .polish-armor-slot.has-card>strong{font-size:10px;line-height:1.15;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.polish-workspace.is-polish .polish-armor-slot .rarity-badge{position:absolute;top:6px;left:6px;font-size:8px}
.polish-workspace.is-polish .polish-armor-slot .reforge-sacrifice-value{position:absolute;right:5px;top:5px;padding:3px 5px;border-radius:999px;background:#18170f;border:1px solid rgba(200,173,106,.35);color:var(--gold2);font-size:7px;font-weight:900}
.polish-workspace.is-polish .polish-armor-slot-1{left:50%;top:20px;transform:translateX(-50%)!important}
.polish-workspace.is-polish .polish-armor-slot-2{left:24px;top:50%;transform:translateY(-50%)!important}
.polish-workspace.is-polish .polish-armor-slot-3{left:50%;top:50%;transform:translate(-50%,-50%)!important;width:200px;min-height:170px}
.polish-workspace.is-polish .polish-armor-slot-4{right:24px;top:50%;transform:translateY(-50%)!important}
.polish-workspace.is-polish .polish-armor-slot-5{left:50%;bottom:20px;transform:translateX(-50%)!important}
.polish-workspace.is-polish .reforge-target-summary{margin-top:0}
@media(max-width:1400px){.polish-workspace.is-polish .polish-armor-layout{grid-template-columns:290px minmax(0,1fr)}.polish-workspace.is-polish .polish-armor-target-slot{min-height:380px}.polish-workspace.is-polish .polish-armor-target-slot.has-card img{height:245px}.polish-workspace.is-polish .polish-armor-board{min-height:590px}}
@media(max-width:1100px){.polish-workspace.is-polish .polish-armor-layout{grid-template-columns:1fr}.polish-workspace.is-polish .polish-armor-target-slot{min-height:240px}.polish-workspace.is-polish .polish-armor-target-slot.has-card img{height:170px}}
@media(max-width:760px){.polish-workspace.is-polish .polish-armor-board{min-height:700px;padding:18px}.polish-workspace.is-polish .polish-armor-slot{width:146px;min-height:126px}.polish-workspace.is-polish .polish-armor-slot-2{left:8px;top:54%}.polish-workspace.is-polish .polish-armor-slot-4{right:8px;top:54%}.polish-workspace.is-polish .polish-armor-slot-3{width:164px;min-height:142px}.polish-workspace.is-polish .polish-silhouette img{width:min(58%,230px);height:70%}.polish-workspace.is-polish .polish-silhouette span{font-size:2.2rem}}


/* 0.2.92 · Polissage : carrés extérieurs collés aux extrémités */
.polish-workspace.is-polish .polish-armor-slot-1{top:8px!important}
.polish-workspace.is-polish .polish-armor-slot-2{left:8px!important}
.polish-workspace.is-polish .polish-armor-slot-4{right:8px!important}
.polish-workspace.is-polish .polish-armor-slot-5{bottom:8px!important}
@media(max-width:760px){.polish-workspace.is-polish .polish-armor-slot-2{left:4px!important}.polish-workspace.is-polish .polish-armor-slot-4{right:4px!important}.polish-workspace.is-polish .polish-armor-slot-1{top:6px!important}.polish-workspace.is-polish .polish-armor-slot-5{bottom:6px!important}}


/* 0.2.93 · Polissage : rapprocher les deux emplacements latéraux du torse */
.polish-workspace.is-polish .polish-armor-slot-2{left:calc(50% - 310px)!important;right:auto!important}
.polish-workspace.is-polish .polish-armor-slot-4{right:calc(50% - 310px)!important;left:auto!important}
@media(max-width:1200px){
  .polish-workspace.is-polish .polish-armor-slot-2{left:calc(50% - 275px)!important}
  .polish-workspace.is-polish .polish-armor-slot-4{right:calc(50% - 275px)!important}
}
@media(max-width:760px){
  .polish-workspace.is-polish .polish-armor-slot-2{left:8px!important}
  .polish-workspace.is-polish .polish-armor-slot-4{right:8px!important}
}


/* 0.2.94 · Polissage : empêcher les déplacements bizarres au survol */
.polish-workspace.is-polish .polish-armor-slot{transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,filter .18s ease}
.polish-workspace.is-polish .polish-armor-slot:hover:not(:disabled){filter:brightness(1.06)}
.polish-workspace.is-polish .polish-armor-slot-1:hover:not(:disabled){transform:translateX(-50%)!important}
.polish-workspace.is-polish .polish-armor-slot-2:hover:not(:disabled){transform:translateY(-50%)!important}
.polish-workspace.is-polish .polish-armor-slot-3:hover:not(:disabled){transform:translate(-50%,-50%)!important}
.polish-workspace.is-polish .polish-armor-slot-4:hover:not(:disabled){transform:translateY(-50%)!important}
.polish-workspace.is-polish .polish-armor-slot-5:hover:not(:disabled){transform:translateX(-50%)!important}


/* 0.2.95 · Refonte ciblée de la page Alchimie en pyramide */
.polish-workspace.is-alchemy{gap:24px}
.polish-workspace.is-alchemy .alchemy-layout{display:grid;grid-template-columns:320px minmax(0,1fr);gap:26px;align-items:stretch}
.polish-workspace.is-alchemy .alchemy-target-column{display:grid;grid-template-rows:auto 1fr;gap:12px;min-width:0}
.polish-workspace.is-alchemy .alchemy-target-head{display:grid;gap:4px;padding:8px 4px 0}
.polish-workspace.is-alchemy .alchemy-target-head small{font-size:11px;letter-spacing:1.1px;color:#bca56a;font-weight:800}
.polish-workspace.is-alchemy .alchemy-target-head span{font-size:12px;color:#8f9387;line-height:1.4}
.polish-workspace.is-alchemy .alchemy-target-slot{position:relative!important;inset:auto!important;left:auto!important;top:auto!important;transform:none!important;width:100%;min-height:400px;max-width:none;z-index:2;border-radius:24px;padding:16px 14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center}
.polish-workspace.is-alchemy .alchemy-target-slot:hover:not(:disabled){transform:none!important;filter:brightness(1.05)}
.polish-workspace.is-alchemy .alchemy-target-slot.has-card img{width:100%;height:255px;object-fit:contain;border-radius:12px;background:#090b08}
.polish-workspace.is-alchemy .alchemy-target-slot.has-card>strong{max-width:100%;white-space:normal;font-size:14px;line-height:1.25}
.polish-workspace.is-alchemy .alchemy-target-slot>strong{font-size:16px;line-height:1.25}
.polish-workspace.is-alchemy .alchemy-target-slot>small{font-size:11px}
.polish-workspace.is-alchemy .alchemy-stage{display:grid;grid-template-rows:auto 1fr;gap:12px;min-width:0}
.polish-workspace.is-alchemy .alchemy-stage-head{min-height:40px;padding:10px 14px;border:1px solid rgba(212,184,101,.14);border-radius:14px;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(0,0,0,.02));font-size:12px;color:#9a9e92;display:flex;align-items:center;justify-content:center;text-align:center}
.polish-workspace.is-alchemy .alchemy-stage-head strong{color:var(--gold2)}
.polish-workspace.is-alchemy .alchemy-board{position:relative;min-height:560px;padding:24px;border:1px solid rgba(212,184,101,.18);border-radius:28px;background:radial-gradient(circle at 50% 42%,rgba(212,184,101,.08),rgba(255,255,255,0) 30%),radial-gradient(circle at 50% 62%,rgba(212,184,101,.035),rgba(255,255,255,0) 64%),rgba(255,255,255,.015);overflow:hidden;isolation:isolate}
.polish-workspace.is-alchemy .alchemy-board::before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:420px;height:320px;border-radius:50%;border:1px solid rgba(212,184,101,.10);box-shadow:0 0 0 34px rgba(212,184,101,.02),inset 0 0 30px rgba(212,184,101,.04)}
.polish-workspace.is-alchemy .alchemy-board::after{content:"";position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(212,184,101,.08),rgba(212,184,101,0) 68%)}
.polish-workspace.is-alchemy .alchemy-silhouette{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:1}
.polish-workspace.is-alchemy .alchemy-silhouette span{position:absolute;font-size:3.1rem;letter-spacing:.5rem;color:rgba(212,184,101,.08);transform:rotate(-10deg);user-select:none}
.polish-workspace.is-alchemy .alchemy-slot{position:absolute;z-index:2;width:190px;min-height:140px;padding:10px 8px;border-radius:18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,filter .18s ease}
.polish-workspace.is-alchemy .alchemy-slot:hover:not(:disabled){filter:brightness(1.06)}
.polish-workspace.is-alchemy .alchemy-slot.has-card img{width:100%;height:88px;object-fit:contain;border-radius:10px;background:#090b08}
.polish-workspace.is-alchemy .alchemy-slot.has-card>strong{font-size:10px;line-height:1.15;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.polish-workspace.is-alchemy .alchemy-slot .rarity-badge{position:absolute;top:6px;left:6px;font-size:8px}
.polish-workspace.is-alchemy .alchemy-slot .reforge-sacrifice-value{position:absolute;right:5px;top:5px;padding:3px 5px;border-radius:999px;background:#18170f;border:1px solid rgba(200,173,106,.35);color:var(--gold2);font-size:7px;font-weight:900}
.polish-workspace.is-alchemy .alchemy-slot-1{left:50%;top:28px;transform:translateX(-50%)!important}
.polish-workspace.is-alchemy .alchemy-slot-2{left:19%;bottom:54px;transform:none!important}
.polish-workspace.is-alchemy .alchemy-slot-3{right:19%;bottom:54px;transform:none!important}
.polish-workspace.is-alchemy .alchemy-slot-1:hover:not(:disabled){transform:translateX(-50%)!important}
.polish-workspace.is-alchemy .alchemy-slot-2:hover:not(:disabled){transform:none!important}
.polish-workspace.is-alchemy .alchemy-slot-3:hover:not(:disabled){transform:none!important}
@media(max-width:1400px){.polish-workspace.is-alchemy .alchemy-layout{grid-template-columns:290px minmax(0,1fr)}.polish-workspace.is-alchemy .alchemy-target-slot{min-height:360px}.polish-workspace.is-alchemy .alchemy-target-slot.has-card img{height:220px}.polish-workspace.is-alchemy .alchemy-board{min-height:520px}.polish-workspace.is-alchemy .alchemy-slot-2{left:13%}.polish-workspace.is-alchemy .alchemy-slot-3{right:13%}}
@media(max-width:1100px){.polish-workspace.is-alchemy .alchemy-layout{grid-template-columns:1fr}.polish-workspace.is-alchemy .alchemy-target-slot{min-height:240px}.polish-workspace.is-alchemy .alchemy-target-slot.has-card img{height:165px}}
@media(max-width:760px){.polish-workspace.is-alchemy .alchemy-board{min-height:500px;padding:18px}.polish-workspace.is-alchemy .alchemy-slot{width:150px;min-height:122px}.polish-workspace.is-alchemy .alchemy-slot-1{top:18px}.polish-workspace.is-alchemy .alchemy-slot-2{left:10px;bottom:26px}.polish-workspace.is-alchemy .alchemy-slot-3{right:10px;bottom:26px}.polish-workspace.is-alchemy .alchemy-silhouette span{font-size:2.2rem}}


/* 0.2.96 · Alchimie : pyramide resserrée + Comet Azur */
.polish-workspace.is-alchemy .alchemy-silhouette img{position:absolute;width:min(48%,360px);height:72%;object-fit:contain;opacity:.13;filter:saturate(.8) brightness(.95);pointer-events:none}
.polish-workspace.is-alchemy .alchemy-silhouette img + span{opacity:.24}
.polish-workspace.is-alchemy .alchemy-slot-1{top:78px!important}
.polish-workspace.is-alchemy .alchemy-slot-2{left:29%!important;bottom:82px!important}
.polish-workspace.is-alchemy .alchemy-slot-3{right:29%!important;bottom:82px!important}
.polish-workspace.is-alchemy .alchemy-slot-1:hover:not(:disabled){transform:translateX(-50%)!important}
.polish-workspace.is-alchemy .alchemy-slot-2:hover:not(:disabled),.polish-workspace.is-alchemy .alchemy-slot-3:hover:not(:disabled){transform:none!important}
@media(max-width:1400px){.polish-workspace.is-alchemy .alchemy-slot-2{left:25%!important}.polish-workspace.is-alchemy .alchemy-slot-3{right:25%!important}}
@media(max-width:760px){.polish-workspace.is-alchemy .alchemy-slot-1{top:56px!important}.polish-workspace.is-alchemy .alchemy-slot-2{left:12%!important;bottom:54px!important}.polish-workspace.is-alchemy .alchemy-slot-3{right:12%!important;bottom:54px!important}.polish-workspace.is-alchemy .alchemy-silhouette img{width:min(58%,250px);height:64%}}


/* 0.2.97 · Alchimie : pyramide encore plus compacte + vrai Comet Azur */
.polish-workspace.is-alchemy .alchemy-silhouette span{display:none!important}
.polish-workspace.is-alchemy .alchemy-silhouette img{
  position:absolute;
  width:min(44%,340px)!important;
  height:68%!important;
  object-fit:contain;
  opacity:.16!important;
  filter:saturate(.95) brightness(1.03)!important;
  pointer-events:none;
}
.polish-workspace.is-alchemy .alchemy-slot-1{top:118px!important}
.polish-workspace.is-alchemy .alchemy-slot-2{left:35%!important;bottom:122px!important}
.polish-workspace.is-alchemy .alchemy-slot-3{right:35%!important;bottom:122px!important}
.polish-workspace.is-alchemy .alchemy-slot-1:hover:not(:disabled){transform:translateX(-50%)!important}
.polish-workspace.is-alchemy .alchemy-slot-2:hover:not(:disabled),
.polish-workspace.is-alchemy .alchemy-slot-3:hover:not(:disabled){transform:none!important}
@media(max-width:1400px){
  .polish-workspace.is-alchemy .alchemy-slot-1{top:104px!important}
  .polish-workspace.is-alchemy .alchemy-slot-2{left:32%!important;bottom:104px!important}
  .polish-workspace.is-alchemy .alchemy-slot-3{right:32%!important;bottom:104px!important}
}
@media(max-width:760px){
  .polish-workspace.is-alchemy .alchemy-slot-1{top:82px!important}
  .polish-workspace.is-alchemy .alchemy-slot-2{left:20%!important;bottom:72px!important}
  .polish-workspace.is-alchemy .alchemy-slot-3{right:20%!important;bottom:72px!important}
  .polish-workspace.is-alchemy .alchemy-silhouette img{width:min(56%,240px)!important;height:62%!important}
}


/* 0.2.98 · Alchimie : feedback au survol sans déplacer les slots */
.polish-workspace.is-alchemy .alchemy-slot:hover:not(:disabled){
  border-color:#8f7b4b!important;
  box-shadow:0 0 28px rgba(200,173,106,.14)!important;
  background:linear-gradient(180deg,#181a13,#11130f)!important;
  filter:brightness(1.08)!important;
}

/* 0.4.0 · Connexion Gracebound universelle */
.gracebound-auth-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.75fr);gap:18px;margin-top:24px;text-align:left}
.gracebound-auth-local,.gracebound-auth-social{border:1px solid rgba(196,172,109,.18);border-radius:16px;background:rgba(10,12,9,.72);padding:16px}
.gracebound-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:14px}
.gracebound-auth-tabs button{border:1px solid #303328;background:#10130f;color:#858a7b;border-radius:10px;padding:10px 12px;cursor:pointer;font-weight:800}
.gracebound-auth-tabs button.is-active{border-color:rgba(211,185,112,.62);color:#e1d09b;background:rgba(211,185,112,.09)}
.gracebound-auth-form{display:none;gap:11px}.gracebound-auth-form.is-active{display:grid}
.gracebound-auth-form label{display:grid;gap:6px}.gracebound-auth-form label>span{font-size:10px;font-weight:900;letter-spacing:.08em;color:#9f987f;text-transform:uppercase}
.gracebound-auth-form input{width:100%;box-sizing:border-box;border:1px solid #303328;border-radius:10px;background:#0b0d0a;color:#ece6d8;padding:11px 12px;outline:none}
.gracebound-auth-form input:focus{border-color:#b69b55;box-shadow:0 0 0 2px rgba(182,155,85,.12)}
.gracebound-auth-form small{color:#747a6c;font-size:9px;line-height:1.45}
.gracebound-auth-social{display:grid;align-content:center;gap:9px}.gracebound-auth-social .btn{width:100%;box-sizing:border-box;justify-content:center}
.gracebound-auth-or{text-align:center;font-size:9px;font-weight:900;letter-spacing:.15em;color:#6f7568;margin-bottom:3px}
.btn-oauth{display:flex;align-items:center;justify-content:center;gap:8px;background:#151814;border:1px solid #34382f;color:#ddd6c5}.btn-google{border-color:rgba(190,190,190,.28)}.btn-twitch{border-color:rgba(145,92,220,.38)}
@media(max-width:720px){.gracebound-auth-grid{grid-template-columns:1fr}}

/* 0.4.0 · Méthodes de connexion dans le profil */
.account-connections-panel{display:grid;gap:16px;padding:18px;border:1px solid rgba(196,172,109,.18);border-radius:16px;background:rgba(10,12,9,.6);margin-top:18px}
.account-connections-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.account-connections-head small{color:#a58f58;font-size:9px;font-weight:900;letter-spacing:.12em}.account-connections-head h2{margin:3px 0 5px}.account-connections-head p{margin:0;color:#7f8578;font-size:11px;line-height:1.5}
.account-connections-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.account-connection-card{display:grid;gap:7px;padding:12px;border:1px solid #292d26;border-radius:12px;background:#0c0f0b}.account-connection-card header{display:flex;justify-content:space-between;gap:10px;align-items:center}.account-connection-card header strong{font-size:12px}.account-connection-card header span{font-size:9px;font-weight:900;color:#73796d}.account-connection-card.is-linked header span{color:#b9aa70}.account-connection-card p{margin:0;color:#777d72;font-size:10px;min-height:1.4em}.account-connection-actions{display:flex;gap:7px;flex-wrap:wrap}.account-connection-actions .btn{font-size:9px;padding:8px 10px}
.local-link-form{display:grid;grid-template-columns:1fr 1fr auto;gap:7px}.local-link-form input{min-width:0;border:1px solid #303328;border-radius:9px;background:#090c09;color:#ece6d8;padding:9px 10px}
@media(max-width:720px){.account-connections-grid{grid-template-columns:1fr}.local-link-form{grid-template-columns:1fr}}

/* Auth e-mail verification */
.gracebound-auth-tabs.has-verify{grid-template-columns:repeat(3,minmax(0,1fr))}
.gracebound-auth-verify{gap:12px}
.gracebound-auth-verify form{display:grid;gap:11px;margin:0}
.auth-code-intro{display:grid;gap:5px;padding:11px 12px;border:1px solid rgba(211,185,112,.24);border-radius:10px;background:rgba(211,185,112,.055)}
.auth-code-intro strong{font-size:12px;color:#e1d09b}.auth-code-intro span{font-size:10px;line-height:1.5;color:#8e9387}
.gracebound-auth-form .auth-code-input{text-align:center;font-size:25px;font-weight:900;letter-spacing:.22em;font-variant-numeric:tabular-nums;padding-left:calc(12px + .22em)}
.auth-code-actions{display:flex;gap:8px;flex-wrap:wrap}.auth-code-actions form{display:block;flex:1}.auth-code-actions .btn{width:100%;justify-content:center}
.gracebound-auth-form button:disabled{opacity:.5;cursor:not-allowed}
@media(max-width:560px){.gracebound-auth-tabs.has-verify{grid-template-columns:1fr}.gracebound-auth-tabs.has-verify button{min-height:42px}}

/* Gracebound — profil épuré + onboarding découverte joueur */
.sidebar-user-compact{gap:9px}
.sidebar-user-compact .sidebar-points{flex:1;min-width:0;color:#cbb978;font-size:11px;font-weight:850;letter-spacing:.2px}

.profile-hero-clean{margin-bottom:14px}
.profile-hero-clean .profile-identity-copy{min-width:0;flex:1}
.profile-hero-clean .profile-tutorial-replay{margin-left:auto;white-space:nowrap}
.profile-stats-essential{grid-template-columns:repeat(4,minmax(0,1fr))!important;margin:0 0 18px}
.profile-stats-essential>div{min-height:88px;display:grid;place-content:center;text-align:center}
.profile-stats-essential strong{font-size:25px}
.profile-stats-essential span{margin-top:4px}
.profile-core-panel{box-shadow:none}
.favorite-card-copy-clean .favorite-rules-details{margin-top:12px}
.favorite-rules-details summary{cursor:pointer;color:#b8a46b;font-size:10px;font-weight:850;list-style:none;width:max-content;max-width:100%}
.favorite-rules-details summary::-webkit-details-marker{display:none}
.favorite-rules-details summary::after{content:' +';color:#6f735f}
.favorite-rules-details[open] summary::after{content:' −'}
.favorite-rules-details .favorite-bonus-scale{margin-top:10px}

.profile-folds{display:grid;gap:10px;margin:18px 0 24px}
.profile-fold{border:1px solid #292d24;border-radius:15px;background:#10130e;overflow:hidden}
.profile-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;transition:.18s ease}
.profile-fold>summary::-webkit-details-marker{display:none}
.profile-fold>summary:hover{background:#141711}
.profile-fold>summary span{display:flex;flex-direction:column;gap:3px;min-width:0}
.profile-fold>summary small{color:#8e8050;font-size:8px;font-weight:900;letter-spacing:1.35px}
.profile-fold>summary strong{font:600 17px Georgia,serif;color:#e6dfd0}
.profile-fold>summary em{font-style:normal;color:#747970;font-size:10px;text-align:right}
.profile-fold>summary::after{content:'+';width:28px;height:28px;display:grid;place-items:center;border:1px solid #34382e;border-radius:9px;color:#aaa17d;flex:0 0 auto}
.profile-fold[open]>summary{border-bottom:1px solid #272b22;background:#12150f}
.profile-fold[open]>summary::after{content:'−'}
.profile-fold-content{padding:18px}
.profile-fold-intro{margin:0 0 14px;color:#7f857b;font-size:11px;line-height:1.55}
.profile-settings-stack{display:grid;gap:0;padding-top:4px;padding-bottom:4px}
.profile-setting-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid #24281f}
.profile-setting-row:last-child{border-bottom:0}
.profile-setting-row>div:first-child{min-width:0;flex:1}
.profile-setting-row h3{margin:0 0 5px;font-size:13px;color:#dfd9ca}
.profile-setting-row p{margin:0;max-width:720px;color:#777d73;font-size:10px;line-height:1.5}
.account-connections-grid-compact{margin-top:8px}
.profile-stats-secondary{margin:0;grid-template-columns:repeat(5,minmax(0,1fr))!important}
.account-danger-panel-compact{margin:0;padding:0;border:0;background:transparent;border-radius:0}
.profile-fold-danger>summary strong{color:#d4b1aa}

html.grace-tutorial-open{overflow:hidden}
.grace-tutorial{position:fixed;inset:0;z-index:100000;display:none;pointer-events:auto}
.grace-tutorial.is-visible{display:block}
.grace-tutorial-spotlight{position:fixed;z-index:100001;border:2px solid rgba(224,199,124,.92);border-radius:16px;box-shadow:0 0 0 9999px rgba(3,4,3,.88),0 0 0 5px rgba(201,174,101,.11),0 14px 42px rgba(0,0,0,.48);transition:left .22s ease,top .22s ease,width .22s ease,height .22s ease;pointer-events:none}
.grace-tutorial-card{position:fixed;z-index:100002;left:50%;bottom:24px;transform:translateX(-50%);width:min(660px,calc(100% - 32px));padding:19px 21px 14px;border:1px solid rgba(204,178,107,.42);border-radius:17px;background:rgba(13,15,12,.98);box-shadow:0 22px 60px rgba(0,0,0,.62);color:#e9e4d8}
.grace-tutorial-copy small{display:block;color:#b49b5e;font-size:8px;font-weight:900;letter-spacing:1.55px}
.grace-tutorial-copy h2{margin:5px 0 7px;font:500 23px Georgia,serif}
.grace-tutorial-copy p{margin:0;color:#969b91;font-size:11px;line-height:1.58}
.grace-tutorial-progress{display:flex;gap:5px;margin:14px 0 12px}
.grace-tutorial-progress i{height:3px;flex:1;border-radius:999px;background:#2a2e25}
.grace-tutorial-progress i.is-active{background:#bca35f}
.grace-tutorial-actions{display:flex;justify-content:flex-end;gap:8px}
.grace-tutorial-actions .btn{min-width:106px}
.grace-tutorial-actions .btn:disabled{opacity:.35}
.grace-tutorial-skip{display:block;margin:10px auto 0;padding:3px 8px;border:0;background:transparent;color:#6f746b;font-size:10px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.grace-tutorial-skip:hover{color:#c8b778}
.grace-tutorial-status{min-height:14px;margin:5px 0 0;text-align:center;color:#7f847a;font-size:9px}

@media(max-width:900px){
  .profile-stats-essential{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .profile-stats-secondary{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .profile-setting-row{align-items:flex-start;flex-direction:column;gap:12px}
  .profile-fold>summary em{display:none}
}
@media(max-width:760px){
  .sidebar-user-compact .sidebar-points{display:none}
  .profile-hero-clean{align-items:center;flex-wrap:wrap}
  .profile-hero-clean .profile-tutorial-replay{width:100%;margin-left:0}
  .profile-progression-head{align-items:flex-start;flex-direction:column}
  .favorite-card-panel{grid-template-columns:1fr}
  .favorite-card-slot{grid-template-columns:78px 1fr;gap:10px}
  .favorite-card-slot>img{width:78px;height:100px}
  .favorite-card-actions{grid-column:1/-1;flex-direction:row}
  .favorite-card-actions .btn{flex:1}
  .profile-fold>summary{padding:14px}
  .profile-fold-content{padding:14px}
  .grace-tutorial-card{bottom:76px;width:calc(100% - 20px);padding:16px 16px 12px}
  .grace-tutorial-copy h2{font-size:20px}
  .grace-tutorial-actions{display:grid;grid-template-columns:1fr 1fr}
  .grace-tutorial-actions .btn{min-width:0}
}

/* Gracebound — découverte joueur v2 : ouverture regroupée + profil à plat */
.pack-opening-tools{
  position:relative;z-index:4;width:min(760px,100%);margin-top:15px;padding:14px;
  border:1px solid #2f3329;border-radius:15px;background:rgba(12,15,11,.92);
}
.pack-opening-tools-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:8px}
.pack-opening-tools-head>div{display:grid;gap:2px}
.pack-opening-tools-head small{color:#a28b51;font-size:8px;font-weight:950;letter-spacing:1.55px}
.pack-opening-tools-head strong{font:600 17px Georgia,serif;color:#e6dfd0}
.pack-opening-tools-head>span{color:#70766c;font-size:9px;text-align:right}
.booster-regen-card.booster-regen-inline{
  display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:13px;row-gap:2px;
  margin:9px 0 12px;padding:13px 15px;border-color:rgba(203,177,105,.43);
  background:linear-gradient(90deg,rgba(200,173,106,.105),rgba(17,20,14,.92));
  box-shadow:inset 0 0 28px rgba(200,173,106,.035);
}
.booster-regen-inline>span{grid-row:1/3;min-width:86px;padding:7px 9px;border:1px solid rgba(200,173,106,.2);border-radius:9px;background:#0d100c;text-align:center;font-size:8px;font-weight:950;letter-spacing:1.2px}
.booster-regen-inline strong{font-size:17px;color:#efe4c2;font-variant-numeric:tabular-nums}
.booster-regen-inline small{font-size:9px;color:#777d73}
.pack-quick-controls{display:grid;grid-template-columns:minmax(165px,1fr) 74px minmax(190px,1.15fr) auto;gap:8px;align-items:stretch}
.pack-quick-toggle,.pack-rarity-toggle{
  border:1px solid #30342a;background:#10130f;color:#999e93;border-radius:11px;cursor:pointer;
  transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease;
}
.pack-quick-toggle:hover,.pack-rarity-toggle:hover:not(:disabled){border-color:#4a4c3d;color:#ded6bf;transform:translateY(-1px)}
.pack-quick-toggle{min-height:54px;padding:8px 11px;display:flex;align-items:center;gap:9px;text-align:left}
.pack-quick-toggle.is-active{border-color:rgba(207,179,101,.55);background:rgba(200,173,106,.105);color:#eadba8}
.pack-quick-icon{width:30px;height:30px;display:grid;place-items:center;border:1px solid #35382e;border-radius:9px;background:#0b0e0a;font-size:15px;flex:0 0 auto}
.pack-quick-toggle>span:last-child{display:grid;gap:2px;min-width:0}
.pack-quick-toggle strong{font-size:10px;color:inherit;white-space:nowrap}
.pack-quick-toggle small{font-size:8px;color:#73796f;font-weight:750}
.pack-sound-toggle{justify-content:center;padding:6px;gap:4px;flex-direction:column;text-align:center}
.pack-speaker-icon{width:26px;height:26px;display:grid;place-items:center;color:#d9c47f}
.pack-speaker-icon svg{width:25px;height:25px}
.pack-sound-toggle.is-off .pack-speaker-icon{color:#686e66;opacity:.7}
.pack-sound-toggle .pack-control-state{font-size:7px!important;line-height:1.1;white-space:nowrap}
.pack-rarity-quick{display:grid;grid-template-columns:1fr 1fr;gap:6px;min-width:142px}
.pack-rarity-toggle{min-height:54px;padding:6px 10px;display:grid;place-content:center;text-align:center;gap:1px}
.pack-rarity-toggle strong{font:700 15px Georgia,serif;color:#837f72}
.pack-rarity-toggle small{font-size:7px;color:#666d64;white-space:nowrap}
.pack-rarity-toggle.is-active{background:rgba(200,173,106,.095);border-color:rgba(200,173,106,.45)}
.pack-rarity-toggle.is-active strong{color:#e2ce91}
.pack-rarity-toggle:disabled{opacity:.38;cursor:not-allowed;transform:none}
.pack-quick-status{height:13px;margin:5px 1px -2px;color:#82887e;font-size:8px;text-align:right}
.pack-quick-status.is-error{color:#c78980}
.pack-caption-row{justify-content:center;margin-top:7px}

.profile-favorite-focus{margin:18px 0;padding:25px;border:1px solid #2b2f26;border-radius:18px;background:linear-gradient(180deg,rgba(20,23,18,.96),rgba(13,15,12,.96))}
.profile-section-heading-centered{text-align:center;max-width:720px;margin:0 auto 20px}
.profile-section-heading-centered>small,.profile-flat-heading small,.profile-danger-flat>div>small{color:#9a8756;font-size:8px;font-weight:950;letter-spacing:1.55px}
.profile-section-heading-centered h2{margin:5px 0 7px;font:500 27px Georgia,serif;color:#e8e1d2}
.profile-section-heading-centered p{margin:0;color:#83897e;font-size:11px;line-height:1.6}
.favorite-hunt-layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:28px;align-items:center;max-width:850px;margin:0 auto}
.favorite-target-card{
  position:relative;isolation:isolate;width:100%;aspect-ratio:2/2.9;padding:0;overflow:hidden;cursor:pointer;
  border:1px solid rgba(200,173,106,.36);border-radius:15px;background:radial-gradient(circle at 50% 35%,rgba(200,173,106,.08),transparent 45%),#0b0e0a;
  box-shadow:0 17px 38px rgba(0,0,0,.38);color:#ded6c2;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.favorite-target-card:before{content:"";position:absolute;inset:8px;z-index:3;border:1px solid rgba(200,173,106,.18);border-radius:11px;pointer-events:none}
.favorite-target-card:hover{transform:translateY(-5px);border-color:rgba(222,195,119,.72);box-shadow:0 24px 48px rgba(0,0,0,.48),0 0 30px rgba(200,173,106,.08)}
.favorite-target-card>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#090b08;z-index:0}
.favorite-target-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 48%,rgba(4,5,4,.94) 84%,#080a07 100%)}
.favorite-target-rarity{position:absolute;z-index:4;top:15px;left:15px;min-width:28px;padding:4px 7px;border-radius:7px;background:rgba(8,10,7,.88);border:1px solid rgba(200,173,106,.28);color:#d8c17d;font-size:9px;font-weight:950}
.favorite-target-copy{position:absolute;z-index:4;left:18px;right:18px;bottom:44px;display:grid;gap:3px;text-align:left}
.favorite-target-copy strong{font:500 16px Georgia,serif;color:#eee6d5;line-height:1.15}
.favorite-target-copy small{font-size:8px;color:#8d9287}
.favorite-target-action{position:absolute;z-index:4;left:16px;right:16px;bottom:14px;padding-top:7px;border-top:1px solid rgba(200,173,106,.17);color:#c7ae69;font-size:8px;font-weight:900;letter-spacing:.65px;text-align:center;text-transform:uppercase}
.favorite-target-empty-mark{position:absolute;z-index:2;left:50%;top:42%;transform:translate(-50%,-50%);width:72px;height:72px;display:grid;place-items:center;border:1px solid rgba(200,173,106,.24);border-radius:50%;color:#b99f5c;font-size:28px}
.favorite-hunt-info{display:grid;gap:13px;align-content:center}
.favorite-hunt-status{padding:15px 16px;border:1px solid #2c3027;border-radius:13px;background:#0d100c;display:grid;gap:4px}
.favorite-hunt-status small{color:#89784c;font-size:8px;font-weight:950;letter-spacing:1.35px}
.favorite-hunt-status strong{font:500 19px Georgia,serif;color:#dcd5c6}
.favorite-hunt-status span{color:#7f857b;font-size:10px;line-height:1.5}
.favorite-hunt-status.is-active{border-color:rgba(205,177,97,.4);background:rgba(200,173,106,.055)}
.favorite-hunt-status.is-active strong{color:#e3cf91}
.favorite-bonus-scale-visible{margin:0!important}
.favorite-target-remove{justify-self:start}

.profile-flat-grid{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(520px,1.28fr);gap:14px;margin:18px 0}
.profile-flat-panel{padding:20px;border:1px solid #292d24;border-radius:16px;background:#10130e}
.profile-flat-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:13px}
.profile-flat-heading h2{margin:4px 0 0;font:500 20px Georgia,serif;color:#e1dbcc}
.profile-flat-heading>span{max-width:260px;color:#737a70;font-size:9px;line-height:1.45;text-align:right}
.profile-setting-row-flat{padding:14px 0;border-top:1px solid #252920;border-bottom:1px solid #252920}
.profile-tutorial-flat{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:14px}
.profile-tutorial-flat>div{display:grid;gap:3px}
.profile-tutorial-flat strong{font-size:11px;color:#d9d3c4}.profile-tutorial-flat small{font-size:9px;color:#777d72}
.account-connections-grid-flat{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.account-connections-grid-flat .account-connection-card{padding:10px}
.account-connections-grid-flat .account-connection-card p{min-height:0}
.account-connection-local{grid-column:1/-1}
.profile-secondary-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:14px 0}
.profile-secondary-strip>div{padding:12px 10px;border:1px solid #272b22;border-radius:12px;background:#0f120e;text-align:center}
.profile-secondary-strip strong{display:block;font:500 20px Georgia,serif;color:#d8cba5}
.profile-secondary-strip span{display:block;margin-top:3px;color:#737970;font-size:8px}
.profile-danger-flat{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:15px 0 24px;padding:17px 19px;border:1px solid rgba(144,82,74,.28);border-radius:14px;background:rgba(81,39,34,.06)}
.profile-danger-flat h2{margin:4px 0 4px;font:500 17px Georgia,serif;color:#d1b5ae}.profile-danger-flat p{margin:0;color:#776d69;font-size:9px;line-height:1.45}

@media(max-width:1050px){
  .pack-quick-controls{grid-template-columns:1fr 72px 1fr}.pack-rarity-quick{grid-column:1/-1;grid-template-columns:1fr 1fr}
  .profile-flat-grid{grid-template-columns:1fr}.profile-connections-flat{order:2}
}
@media(max-width:760px){
  .pack-opening-tools{padding:11px}.pack-opening-tools-head{align-items:flex-start;flex-direction:column;gap:4px}.pack-opening-tools-head>span{text-align:left}
  .booster-regen-card.booster-regen-inline{grid-template-columns:1fr;padding:11px}.booster-regen-inline>span{grid-row:auto;justify-self:start;min-width:0}.booster-regen-inline strong{font-size:15px}
  .pack-quick-controls{grid-template-columns:1fr 68px}.pack-auto-stop-placeholder{display:none}.pack-quick-toggle#packAutoStopToggle{grid-column:1/-1}.pack-rarity-quick{grid-column:1/-1}
  .favorite-hunt-layout{grid-template-columns:1fr}.favorite-target-card{width:min(210px,72vw);justify-self:center}.favorite-hunt-info{text-align:center}.favorite-target-remove{justify-self:center}
  .profile-flat-heading{flex-direction:column}.profile-flat-heading>span{text-align:left}.account-connections-grid-flat{grid-template-columns:1fr}.account-connection-local{grid-column:auto}
  .profile-secondary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-secondary-strip>div:last-child{grid-column:1/-1}
  .profile-danger-flat{align-items:flex-start;flex-direction:column}.profile-danger-flat .btn{width:100%}
  .profile-tutorial-flat{align-items:flex-start;flex-direction:column}.profile-tutorial-flat .btn{width:100%}
}

/* Gracebound onboarding v3 · lisibilité, profil compact, interactions guidées */
.grace-tutorial-card{width:min(780px,calc(100% - 32px));padding:24px 26px 18px}
.grace-tutorial-copy small{font-size:11px;letter-spacing:1.7px}
.grace-tutorial-copy h2{margin:7px 0 10px;font-size:30px;line-height:1.15}
.grace-tutorial-copy p{font-size:15px;line-height:1.62;color:#adb2a8}
.grace-tutorial-progress{margin:17px 0 15px;gap:6px}
.grace-tutorial-progress i{height:4px}
.grace-tutorial-actions{display:grid;grid-template-columns:minmax(150px,1fr) auto auto;align-items:center;gap:10px}
.grace-tutorial-actions .btn{min-width:120px;min-height:46px;font-size:13px}
.grace-tutorial-skip{margin:0;justify-self:start;min-height:46px;padding:0 14px;border:1px solid #30342b;border-radius:11px;background:#11140f;color:#a9aea4;font-size:12px;font-weight:800;text-decoration:none;cursor:pointer}
.grace-tutorial-skip:hover{color:#e1d5b3;border-color:#5f573f;background:#171a13}
.grace-tutorial-status{margin:8px 0 0;font-size:11px;min-height:17px}
.grace-tutorial.is-interactive{pointer-events:none}
.grace-tutorial.is-interactive .grace-tutorial-card{pointer-events:auto}
html.grace-tutorial-open .card-picker-overlay,
html.grace-tutorial-open .gb-dialog-overlay,
html.grace-tutorial-open .talent-card-picker{z-index:100020!important}
html.grace-tutorial-open .talent-hover-tooltip,
html.grace-tutorial-open .talent-center-build-tooltip,
html.grace-tutorial-open .talent-constellation-hover-tooltip{z-index:100015!important}
.grace-tutorial-card.is-action-required .grace-tutorial-next:disabled{opacity:.35;filter:saturate(.4)}
.grace-tutorial-action-hint{display:block;margin-top:7px;color:#d5c175;font-size:12px;font-weight:800}

.profile-avatar-button{position:relative;flex:0 0 auto;width:86px;height:86px;padding:0;border:0;border-radius:50%;background:transparent;cursor:pointer}
.profile-avatar-button .profile-avatar{width:86px;height:86px;display:grid;place-items:center}
.profile-avatar-button:hover .profile-avatar{border-color:#bca35f;filter:brightness(1.05)}
.profile-avatar-edit{position:absolute;right:0;bottom:1px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:2px solid #0d100c;background:#d2b765;color:#11140f;font-size:18px;font-weight:900;line-height:1;box-shadow:0 4px 14px rgba(0,0,0,.45)}
.profile-avatar-status{display:block;min-height:14px;margin-top:5px;color:#b9a668;font-size:10px}

.profile-favorite-compact{display:grid;grid-template-columns:minmax(0,1fr) 132px;gap:20px;align-items:center;padding:20px 22px!important}
.profile-favorite-compact .profile-section-heading{margin:0!important;text-align:left!important;max-width:none!important}
.profile-favorite-compact .profile-section-heading h2{font-size:25px;margin:5px 0 8px}
.profile-favorite-compact .profile-section-heading p{max-width:900px;margin:0;color:#8f958b;font-size:12.5px;line-height:1.58}
.favorite-compact-meta{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin-top:12px;padding-top:11px;border-top:1px solid #282c24}
.favorite-compact-meta strong{font:500 16px Georgia,serif;color:#e2dac9}
.favorite-compact-meta span{font-size:10px;color:#9da197}
.favorite-compact-picker{display:grid;justify-items:center;gap:7px}
.favorite-target-card.favorite-target-card-compact{width:112px!important;height:148px!important;min-height:0!important;padding:0!important;border-radius:13px!important;display:grid!important;place-items:center!important;overflow:hidden!important;position:relative!important;transform:none!important;background:radial-gradient(circle at 50% 42%,rgba(210,181,91,.08),transparent 58%),#0b0e0a!important}
.favorite-target-card.favorite-target-card-compact:before{inset:6px;border-radius:9px}
.favorite-target-card.favorite-target-card-compact:hover{transform:translateY(-2px)!important}
.favorite-target-card.favorite-target-card-compact>img{width:100%!important;height:100%!important;object-fit:cover!important;opacity:.86}
.favorite-target-empty-plus{font-size:46px;font-weight:200;color:#cdb56f;line-height:1}
.favorite-target-plus-overlay{position:absolute;right:7px;bottom:7px;z-index:6;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:rgba(12,14,11,.92);border:1px solid #8e7b48;color:#e0c879;font-size:20px;font-weight:800}
.favorite-target-card-compact .favorite-target-rarity{left:8px;top:8px}
.favorite-compact-remove{border:0;background:transparent;color:#777d73;font-size:9px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}

.profile-connections-compact{align-content:start}
.provider-logo-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:10px 0 14px}
.provider-logo-button{position:relative;width:58px;height:58px;border-radius:16px;border:1px solid #30342b;background:#10130f;color:#d8d3c7;display:grid;place-items:center;text-decoration:none;cursor:pointer;transition:.16s}
.provider-logo-button:hover:not(:disabled){transform:translateY(-2px);border-color:#6f6242;background:#151812}
.provider-logo-button.is-linked{border-color:rgba(207,181,104,.6);box-shadow:inset 0 0 18px rgba(207,181,104,.05)}
.provider-logo-button.is-unavailable{opacity:.38;cursor:not-allowed}
.provider-logo-placeholder{font:700 23px/1 system-ui,sans-serif}
.provider-logo-button i{position:absolute;right:5px;bottom:4px;width:16px;height:16px;border-radius:50%;display:grid;place-items:center;background:#d3b968;color:#11140f;font-size:10px;font-style:normal;font-weight:900}
.provider-logo-button.is-unavailable i{background:#454a40;color:#b4b8ae}
.local-account-compact{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr);gap:14px;align-items:center;padding-top:12px;border-top:1px solid #282c24}
.local-account-copy{display:grid;gap:3px}
.local-account-copy strong{font-size:11px;color:#dbd5c8}
.local-account-copy span{font-size:9px;color:#777d74;overflow-wrap:anywhere}
.local-link-form-compact{display:grid!important;grid-template-columns:minmax(110px,.8fr) minmax(140px,1fr) auto!important;gap:8px!important;margin:0!important}
.local-link-form-compact input{min-width:0!important}

@media(max-width:760px){
  .grace-tutorial-card{bottom:74px;width:calc(100% - 18px);padding:18px 16px 14px}
  .grace-tutorial-copy small{font-size:9px}.grace-tutorial-copy h2{font-size:23px}.grace-tutorial-copy p{font-size:13px}
  .grace-tutorial-actions{grid-template-columns:1fr 1fr}.grace-tutorial-skip{grid-column:1/-1;grid-row:2;width:100%;justify-self:stretch}.grace-tutorial-actions .btn{min-width:0}
  .profile-favorite-compact{grid-template-columns:1fr}.profile-favorite-compact .profile-section-heading{text-align:center!important}.favorite-compact-meta{justify-content:center}
  .local-account-compact{grid-template-columns:1fr}.local-link-form-compact{grid-template-columns:1fr!important}
}
html.grace-tutorial-open .talent-node.is-tutorial-hover .talent-node-core{box-shadow:0 0 0 3px rgba(233,204,120,.55),0 0 34px rgba(215,183,92,.46)!important;filter:brightness(1.18)}

/* Gracebound onboarding v4 · déplacement contextuel + logos sociaux */
.grace-tutorial-card{transition:top .18s ease,bottom .18s ease,transform .18s ease}
.grace-tutorial-card.is-top{top:20px;bottom:auto}
.provider-logo-image{width:34px;height:34px;object-fit:contain;border-radius:8px;display:block}
.provider-logo-button.provider-discord .provider-logo-image{width:37px;height:37px}
.provider-logo-button.provider-twitch .provider-logo-image{width:36px;height:36px}
.provider-logo-button.is-unavailable .provider-logo-image{filter:grayscale(1);opacity:.7}
html.grace-tutorial-open .talent-constellation-zone.is-tutorial-hover{background:radial-gradient(circle at 50% 50%,rgba(218,188,92,.14),rgba(218,188,92,.03) 55%,transparent 72%);filter:drop-shadow(0 0 14px rgba(218,188,92,.28))}
@media(max-width:760px){.grace-tutorial-card.is-top{top:12px;bottom:auto}}


/* Gracebound onboarding v5 · chasse carrée + démo Malenia */
.profile-favorite-compact{display:grid;grid-template-columns:minmax(250px,300px) minmax(0,1fr);gap:24px;align-items:start;padding:22px!important}
.favorite-compact-picker{display:grid;gap:12px;justify-items:stretch}
.favorite-target-card.favorite-target-card-compact{width:100%!important;aspect-ratio:1/1!important;height:auto!important;min-height:0!important;padding:16px!important;border-radius:22px!important;display:grid!important;grid-template-rows:1fr auto!important;justify-items:center!important;align-items:center!important;overflow:hidden!important;position:relative!important;transform:none!important;background:radial-gradient(circle at 50% 38%,rgba(210,181,91,.11),transparent 58%),linear-gradient(180deg,#10140f,#0a0d09)!important}
.favorite-target-card.favorite-target-card-compact:before{inset:10px;border-radius:16px}
.favorite-target-card.favorite-target-card-compact:hover{transform:translateY(-2px)!important}
.favorite-target-preview{position:relative;z-index:2;width:min(72%,160px);height:min(78%,200px);display:grid;place-items:center;padding:10px;border:1px solid rgba(200,173,106,.18);border-radius:18px;background:linear-gradient(180deg,#0b0e0a,#090b08);box-shadow:0 18px 34px rgba(0,0,0,.34)}
.favorite-target-preview img{position:static!important;inset:auto!important;width:100%!important;height:100%!important;object-fit:contain!important;background:transparent!important;opacity:.95;border-radius:12px}
.favorite-target-card-caption{position:relative;z-index:4;display:grid;gap:4px;width:100%;padding-top:10px;border-top:1px solid rgba(200,173,106,.12);text-align:center}
.favorite-target-card-caption strong{font:500 16px Georgia,serif;color:#ece3d0;line-height:1.18}
.favorite-target-card-caption small{font-size:9px;color:#969c92;line-height:1.45}
.favorite-target-empty-plus{font-size:58px;font-weight:200;color:#cdb56f;line-height:1}
.favorite-target-card-compact .favorite-target-rarity{left:12px;top:12px}
.favorite-target-plus-overlay{right:10px;bottom:56px}
.favorite-tutorial-demo{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;align-items:center;padding:10px 12px;border:1px solid rgba(200,173,106,.18);border-radius:14px;background:#0d100c;position:relative;overflow:hidden}
.favorite-tutorial-demo .rarity-badge{position:absolute;top:8px;left:8px;font-size:7px;padding:2px 5px}
.favorite-tutorial-demo img{width:64px;height:82px;object-fit:contain;border-radius:10px;background:#090b08}
.favorite-tutorial-demo strong{display:block;font-size:11px;color:#e0d9ca;line-height:1.35}
.favorite-tutorial-demo small{display:block;margin-top:2px;font-size:8.5px;color:#888f84;line-height:1.4}
.favorite-compact-copy{text-align:left!important;max-width:none!important;margin:0!important}
.favorite-effect-list{display:grid;gap:8px;margin:14px 0 0;padding:0;list-style:none}
.favorite-effect-list li{display:grid;grid-template-columns:22px minmax(0,1fr);gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid #292d24;border-radius:12px;background:#0d100c}
.favorite-effect-list strong{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(210,181,91,.12);color:#ddc16f;font-size:10px}
.favorite-effect-list span{color:#9aa095;font-size:10.5px;line-height:1.5}
.favorite-compact-meta{display:grid;gap:4px;align-items:start;margin-top:14px;padding-top:12px;border-top:1px solid #282c24}
.favorite-compact-meta strong{font:500 16px Georgia,serif;color:#e2dac9}
.favorite-compact-meta span{font-size:10px;color:#9da197;line-height:1.5}
.favorite-compact-meta.is-active strong{color:#ebd899}
.favorite-compact-remove{justify-self:start;border:0;background:transparent;color:#989d94;font-size:9px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
@media(max-width:760px){
  .profile-favorite-compact{grid-template-columns:1fr;gap:18px}
  .favorite-compact-picker{order:1}.favorite-compact-copy{order:2;text-align:center!important}
  .favorite-target-card.favorite-target-card-compact{max-width:280px;justify-self:center}
  .favorite-effect-list li{grid-template-columns:1fr;justify-items:center;text-align:center}
  .favorite-compact-remove{justify-self:center}
}


/* Onboarding v7 · spotlight stable during programmatic navigation */
.grace-tutorial-spotlight{transition:none!important}
.grace-tutorial-card{transition:none!important}


/* CARD IDENTITY v3 — 2 effets visuels max, types conservés uniquement dans le moteur */
.collection-card.grace-card-frame,.reveal-card.grace-card-frame .front{
  --card-accent:#82734f;
  --card-line:rgba(199,174,105,.28);
  --card-glow:rgba(199,174,105,.12);
}
.collection-card.grace-card-frame.theme-bleed,.reveal-card.grace-card-frame.theme-bleed .front{--card-accent:#d85661;--card-line:rgba(216,86,97,.62);--card-glow:rgba(216,86,97,.18)}
.collection-card.grace-card-frame.theme-poison,.reveal-card.grace-card-frame.theme-poison .front{--card-accent:#67c272;--card-line:rgba(103,194,114,.60);--card-glow:rgba(103,194,114,.17)}
.collection-card.grace-card-frame.theme-rot,.reveal-card.grace-card-frame.theme-rot .front{--card-accent:#e38b46;--card-line:rgba(227,139,70,.64);--card-glow:rgba(227,139,70,.20)}
.collection-card.grace-card-frame.theme-holy,.reveal-card.grace-card-frame.theme-holy .front{--card-accent:#e3c76c;--card-line:rgba(227,199,108,.64);--card-glow:rgba(227,199,108,.19)}
.collection-card.grace-card-frame.theme-fire,.reveal-card.grace-card-frame.theme-fire .front{--card-accent:#d86a42;--card-line:rgba(216,106,66,.60);--card-glow:rgba(216,106,66,.18)}
.collection-card.grace-card-frame.theme-frost,.reveal-card.grace-card-frame.theme-frost .front{--card-accent:#7ec4dc;--card-line:rgba(126,196,220,.60);--card-glow:rgba(126,196,220,.18)}
.collection-card.grace-card-frame.theme-lightning,.reveal-card.grace-card-frame.theme-lightning .front{--card-accent:#d3c654;--card-line:rgba(211,198,84,.62);--card-glow:rgba(211,198,84,.18)}
.collection-card.grace-card-frame.theme-magic,.reveal-card.grace-card-frame.theme-magic .front{--card-accent:#8a9bea;--card-line:rgba(138,155,234,.60);--card-glow:rgba(138,155,234,.18)}
.collection-card.grace-card-frame.theme-gravity,.reveal-card.grace-card-frame.theme-gravity .front{--card-accent:#a278df;--card-line:rgba(162,120,223,.62);--card-glow:rgba(162,120,223,.19)}
.collection-card.grace-card-frame.theme-dragon,.reveal-card.grace-card-frame.theme-dragon .front{--card-accent:#62b6ac;--card-line:rgba(98,182,172,.60);--card-glow:rgba(98,182,172,.17)}
.collection-card.grace-card-frame.theme-sleep,.reveal-card.grace-card-frame.theme-sleep .front{--card-accent:#b18bd2;--card-line:rgba(177,139,210,.60);--card-glow:rgba(177,139,210,.18)}
.collection-card.grace-card-frame.theme-madness,.reveal-card.grace-card-frame.theme-madness .front{--card-accent:#d7b94b;--card-line:rgba(215,185,75,.62);--card-glow:rgba(215,185,75,.18)}
.collection-card.grace-card-frame.theme-death,.reveal-card.grace-card-frame.theme-death .front{--card-accent:#9095a4;--card-line:rgba(144,149,164,.58);--card-glow:rgba(144,149,164,.16)}

/* Cadre collection : uniquement rareté + illustration + nom + 1/2 effets. */
.collection-card.grace-card-frame{
  border-color:var(--card-line)!important;
  background:linear-gradient(180deg,#121510 0%,#0c0f0b 100%)!important;
  box-shadow:0 12px 32px rgba(0,0,0,.30),0 0 18px var(--card-glow)!important;
  overflow:hidden!important;
}
.collection-card.grace-card-frame:hover{border-color:var(--card-accent)!important;box-shadow:0 18px 42px rgba(0,0,0,.38),0 0 28px var(--card-glow)!important}
.collection-card.grace-card-frame .card-art-wrap{height:218px!important;margin:9px 9px 0!important;border:1px solid rgba(255,255,255,.05)!important;border-radius:10px!important;overflow:hidden!important}
.collection-card.grace-card-frame .card-info{padding:9px 11px 11px!important;display:grid!important;grid-template-rows:minmax(42px,auto) 46px!important;gap:8px!important;overflow:hidden!important}
.collection-card.grace-card-frame .card-info h3{height:42px!important;min-height:42px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;overflow:hidden!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;font-size:15px!important;line-height:1.12!important}
.collection-card.grace-card-frame .card-passive-slots{height:46px!important;min-height:46px!important;margin:0!important;padding:5px!important;border:1px solid rgba(255,255,255,.045)!important;border-radius:9px!important;overflow:hidden!important;background:rgba(5,7,5,.34)!important;display:flex!important;align-items:center!important}
.collection-card.grace-card-frame .card-passive-slots .card-affinity-tags{width:100%!important;height:auto!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:1fr!important;gap:6px!important;align-items:center!important}
.collection-card.grace-card-frame .card-passive-slots.has-one .card-affinity-tags{grid-template-columns:minmax(0,78%)!important;justify-content:center!important}
.collection-card.grace-card-frame .card-passive-slots.has-none .card-affinity-tags{display:none!important}
.collection-card.grace-card-frame .card-passive-slots .card-affinity-tags>span{display:flex!important;align-items:center!important;justify-content:center!important;height:32px!important;min-height:32px!important;padding:0 8px!important;border-radius:8px!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;font-size:8px!important;font-weight:900!important;letter-spacing:.35px!important;text-transform:uppercase!important;background:rgba(7,9,7,.78)!important;border:1px solid var(--effect-color,var(--card-accent))!important;color:var(--effect-color,var(--card-accent))!important;box-shadow:inset 0 0 14px color-mix(in srgb,var(--effect-color,var(--card-accent)) 10%,transparent)!important}

/* Chaque badge garde sa propre couleur ; le premier pilote le contour via theme-* sur la carte. */
.effect-bleed{--effect-color:#d85661}.effect-poison{--effect-color:#67c272}.effect-rot{--effect-color:#e38b46}.effect-holy{--effect-color:#e3c76c}.effect-fire{--effect-color:#d86a42}.effect-frost{--effect-color:#7ec4dc}.effect-lightning{--effect-color:#d3c654}.effect-magic{--effect-color:#8a9bea}.effect-gravity{--effect-color:#a278df}.effect-dragon{--effect-color:#62b6ac}.effect-sleep{--effect-color:#b18bd2}.effect-madness{--effect-color:#d7b94b}.effect-death{--effect-color:#9095a4}

/* Légendaire = intérieur rouge, indépendant de la couleur du passif. */
.collection-card.grace-card-frame.rarity-l{background:linear-gradient(180deg,#351010 0%,#1b0909 100%)!important}
.collection-card.grace-card-frame.rarity-l .card-art-wrap{background:radial-gradient(circle at 50% 38%,#612525 0,#2a1111 58%,#130707 100%)!important}

/* Ouverture booster : on conserve exactement l'encombrement 205x310. */
.reveal-card.grace-card-frame .front{border-color:var(--card-line)!important;box-shadow:0 17px 45px rgba(0,0,0,.46),0 0 22px var(--card-glow)!important;overflow:hidden!important;background:linear-gradient(180deg,#121510,#0b0d0a)!important}
.reveal-card.grace-card-frame .reveal-art{height:196px!important;flex:0 0 196px!important;margin:7px 7px 0!important;border:1px solid rgba(255,255,255,.045)!important;border-radius:7px!important;overflow:hidden!important}
.reveal-card.grace-card-frame .reveal-info{height:107px!important;min-height:107px!important;box-sizing:border-box!important;padding:6px 8px 8px!important;display:grid!important;grid-template-rows:48px 43px!important;gap:5px!important;overflow:hidden!important}
.reveal-card.grace-card-frame .reveal-info h3{height:48px!important;margin:0!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;overflow:hidden!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;font-size:12px!important;line-height:15px!important}
.reveal-card.grace-card-frame .card-passive-slots{height:43px!important;min-height:43px!important;margin:0!important;padding:4px!important;border:1px solid rgba(255,255,255,.04)!important;border-radius:6px!important;overflow:hidden!important;background:rgba(5,7,5,.34)!important;display:flex!important;align-items:center!important}
.reveal-card.grace-card-frame .card-passive-slots .card-affinity-tags{width:100%!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px!important}
.reveal-card.grace-card-frame .card-passive-slots.has-one .card-affinity-tags{grid-template-columns:minmax(0,80%)!important;justify-content:center!important}
.reveal-card.grace-card-frame .card-passive-slots.has-none .card-affinity-tags{display:none!important}
.reveal-card.grace-card-frame .card-passive-slots .card-affinity-tags>span{display:flex!important;align-items:center!important;justify-content:center!important;height:27px!important;min-height:27px!important;padding:0 5px!important;border-radius:5px!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;font-size:6px!important;font-weight:900!important;letter-spacing:.2px!important;text-transform:uppercase!important;background:rgba(6,8,6,.72)!important;border:1px solid var(--effect-color,var(--card-accent))!important;color:var(--effect-color,var(--card-accent))!important}
.reveal-card.grace-card-frame.rarity-l .front{background:linear-gradient(180deg,#351010 0%,#170707 100%)!important}
.reveal-card.grace-card-frame.rarity-l .reveal-art{background:radial-gradient(circle at 50% 42%,#612525 0,#2a1111 62%,#120606 100%)!important}

/* Les anciens libellés de type/meta ne doivent jamais réapparaître dans le template carte. */
.collection-card.grace-card-frame .card-info>small,
.collection-card.grace-card-frame .card-footer,
.reveal-card.grace-card-frame .reveal-info>small,
.reveal-card.grace-card-frame .card-footer,
.collection-card.grace-card-frame .card-affinity-title,
.reveal-card.grace-card-frame .card-affinity-title{display:none!important}

@media(max-width:760px){
  .collection-card.grace-card-frame .card-art-wrap{height:154px!important}
  .collection-card.grace-card-frame .card-info{grid-template-rows:minmax(34px,auto) 39px!important;padding:7px 8px 8px!important;gap:6px!important}
  .collection-card.grace-card-frame .card-info h3{height:34px!important;min-height:34px!important;font-size:11px!important}
  .collection-card.grace-card-frame .card-passive-slots{height:39px!important;min-height:39px!important;padding:4px!important}
  .collection-card.grace-card-frame .card-passive-slots .card-affinity-tags>span{height:26px!important;min-height:26px!important;font-size:6px!important;padding:0 5px!important}
}


/* Correctif viewer cartes : illustration toujours entière dans la popup de zoom */
.collection-viewer-card-host .collection-card.grace-card-frame .card-art-wrap,
.card-image-viewer-card .collection-card.grace-card-frame .card-art-wrap{
  height:310px!important;
  min-height:310px!important;
  flex:0 0 310px!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
}
.collection-viewer-card-host .collection-card.grace-card-frame .card-art,
.card-image-viewer-card .collection-card.grace-card-frame .card-art{
  width:92%!important;
  height:92%!important;
  max-width:92%!important;
  max-height:92%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  filter:drop-shadow(0 10px 15px rgba(0,0,0,.52))!important;
}
.collection-viewer-card-host .collection-card.grace-card-frame:hover .card-art,
.card-image-viewer-card .collection-card.grace-card-frame:hover .card-art{
  transform:none!important;
}
@media(max-width:760px){
  .collection-viewer-card-host .collection-card.grace-card-frame .card-art-wrap,
  .card-image-viewer-card .collection-card.grace-card-frame .card-art-wrap{
    height:min(42vh,310px)!important;
    min-height:min(42vh,310px)!important;
    flex-basis:min(42vh,310px)!important;
  }
}

/* === Correctif ouverture cartes + viewer complet ===
   Le template d'ouverture suit désormais la même hiérarchie que la collection :
   rareté > illustration > nom > 0/1/2 effets, sans crop ni débordement. */
.opening-overlay .reveal-zone{
  width:min(1680px,calc(100vw - 48px))!important;
  max-height:calc(100vh - 46px)!important;
}

.opening-overlay:not(.mega-opening) .reveal-cards{
  width:100%!important;
  max-width:1600px!important;
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:clamp(8px,1vw,16px)!important;
  align-items:center!important;
  justify-items:center!important;
  overflow:visible!important;
}

.opening-overlay.mega-opening .reveal-zone{
  width:min(1680px,calc(100vw - 48px))!important;
}
.opening-overlay.mega-opening .reveal-cards{
  width:100%!important;
  max-width:1580px!important;
  display:grid!important;
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:center!important;
  justify-items:center!important;
  overflow:visible!important;
}

.opening-overlay .reveal-card.grace-card-frame{
  --opening-info-height:92px;
  width:100%!important;
  max-width:205px!important;
  min-width:0!important;
  height:auto!important;
  aspect-ratio:205/322!important;
  justify-self:center!important;
}
.opening-overlay .reveal-card.grace-card-frame .face{
  display:flex!important;
  flex-direction:column!important;
  min-width:0!important;
}
.opening-overlay .reveal-card.grace-card-frame .reveal-art{
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  flex:1 1 auto!important;
  margin:7px 7px 0!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
}
.opening-overlay .reveal-card.grace-card-frame .reveal-art img{
  width:92%!important;
  height:92%!important;
  max-width:92%!important;
  max-height:92%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
  filter:drop-shadow(0 8px 13px rgba(0,0,0,.48))!important;
}
.opening-overlay .reveal-card.grace-card-frame .reveal-info{
  width:100%!important;
  height:var(--opening-info-height)!important;
  min-height:var(--opening-info-height)!important;
  flex:0 0 var(--opening-info-height)!important;
  padding:6px 8px 8px!important;
  display:grid!important;
  grid-template-rows:minmax(34px,1fr) 36px!important;
  gap:5px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
.opening-overlay .reveal-card.grace-card-frame .reveal-info h3{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  text-align:center!important;
  font-size:clamp(9px,.72vw,12px)!important;
  line-height:1.12!important;
  align-self:center!important;
}
.opening-overlay .reveal-card.grace-card-frame .card-passive-slots{
  width:100%!important;
  height:36px!important;
  min-height:36px!important;
  margin:0!important;
  padding:3px!important;
  overflow:hidden!important;
  display:flex!important;
  align-items:center!important;
}
.opening-overlay .reveal-card.grace-card-frame .card-passive-slots .card-affinity-tags{
  width:100%!important;
  min-width:0!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:4px!important;
}
.opening-overlay .reveal-card.grace-card-frame .card-passive-slots.has-one .card-affinity-tags{
  grid-template-columns:minmax(0,84%)!important;
  justify-content:center!important;
}
.opening-overlay .reveal-card.grace-card-frame .card-passive-slots .card-affinity-tags>span{
  min-width:0!important;
  width:100%!important;
  height:27px!important;
  min-height:27px!important;
  padding:0 5px!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  text-overflow:ellipsis!important;
  font-size:clamp(5px,.42vw,7px)!important;
  line-height:1!important;
}
.opening-overlay .reveal-card.grace-card-frame.flipped:hover{
  transform:translateY(-9px) scale(1.055)!important;
  z-index:40!important;
  filter:drop-shadow(0 24px 38px rgba(0,0,0,.64))!important;
}
.opening-overlay .reveal-card.grace-card-frame.flipped:hover .reveal-art img{
  transform:none!important;
}

/* Aucun effet : la zone reste structurellement fixe mais devient discrète. */
.opening-overlay .reveal-card.grace-card-frame .card-passive-slots.has-none{
  border-color:rgba(255,255,255,.025)!important;
  background:rgba(5,7,5,.18)!important;
}

/* Écrans intermédiaires : on évite absolument que les 7 cartes sortent de l'écran. */
@media(max-width:1450px){
  .opening-overlay .reveal-zone{width:min(1320px,calc(100vw - 36px))!important}
  .opening-overlay:not(.mega-opening) .reveal-cards{
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:8px!important;
  }
  .opening-overlay .reveal-card.grace-card-frame{
    --opening-info-height:82px;
    max-width:176px!important;
    aspect-ratio:176/282!important;
  }
  .opening-overlay .reveal-card.grace-card-frame .reveal-info{
    grid-template-rows:minmax(30px,1fr) 32px!important;
    padding:5px 6px 6px!important;
  }
  .opening-overlay .reveal-card.grace-card-frame .card-passive-slots{height:32px!important;min-height:32px!important}
  .opening-overlay .reveal-card.grace-card-frame .card-passive-slots .card-affinity-tags>span{height:24px!important;min-height:24px!important;padding:0 4px!important}
  .opening-overlay.mega-opening .reveal-cards{
    grid-template-columns:repeat(7,minmax(0,1fr))!important;
    gap:8px!important;
  }
}

@media(max-width:1050px){
  .opening-overlay{
    align-items:center!important;
    padding:22px 18px!important;
  }
  .opening-overlay .reveal-zone{
    width:min(900px,calc(100vw - 36px))!important;
    max-height:calc(100vh - 44px)!important;
  }
  .opening-overlay:not(.mega-opening) .reveal-cards,
  .opening-overlay.mega-opening .reveal-cards{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    width:min(760px,100%)!important;
    max-height:76vh!important;
    overflow-y:auto!important;
    overflow-x:visible!important;
    padding:10px 8px 18px!important;
  }
  .opening-overlay .reveal-card.grace-card-frame{
    --opening-info-height:78px;
    max-width:165px!important;
    aspect-ratio:165/262!important;
  }
}

@media(max-width:760px){
  .opening-overlay{
    align-items:flex-start!important;
    padding:78px 10px 74px!important;
  }
  .opening-overlay .reveal-zone{
    width:100%!important;
    max-height:calc(100vh - 152px)!important;
  }
  .opening-overlay:not(.mega-opening) .reveal-cards,
  .opening-overlay.mega-opening .reveal-cards{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
    max-height:calc(100vh - 190px)!important;
    gap:9px!important;
    overflow-y:auto!important;
    padding:8px 6px 20px!important;
  }
  .opening-overlay .reveal-card.grace-card-frame{
    --opening-info-height:72px;
    max-width:158px!important;
    aspect-ratio:158/250!important;
  }
  .opening-overlay .reveal-card.grace-card-frame .reveal-art{margin:5px 5px 0!important}
  .opening-overlay .reveal-card.grace-card-frame .reveal-info{
    grid-template-rows:minmax(27px,1fr) 29px!important;
    padding:4px 5px 5px!important;
    gap:4px!important;
  }
  .opening-overlay .reveal-card.grace-card-frame .card-passive-slots{height:29px!important;min-height:29px!important;padding:2px!important}
  .opening-overlay .reveal-card.grace-card-frame .card-passive-slots .card-affinity-tags>span{height:22px!important;min-height:22px!important;font-size:5px!important;padding:0 3px!important}
  .opening-overlay .reveal-card.grace-card-frame.flipped:hover{transform:none!important}
}


/* ==========================================================
   CARD IDENTITY v4 — fond = identité principale, badges seuls
   ========================================================== */
.collection-card.grace-card-frame,
.reveal-card.grace-card-frame .front{
  --card-bg-top:#171912;
  --card-bg-bottom:#0c0e0a;
  --card-art-tint:rgba(199,174,105,.08);
}

/* Identités élémentaires : plus vives car elles représentent le build. */
.collection-card.grace-card-frame.theme-bleed,.reveal-card.grace-card-frame.theme-bleed .front{--card-bg-top:#321316;--card-bg-bottom:#16090b;--card-art-tint:rgba(216,86,97,.18)}
.collection-card.grace-card-frame.theme-poison,.reveal-card.grace-card-frame.theme-poison .front{--card-bg-top:#152a18;--card-bg-bottom:#09110b;--card-art-tint:rgba(103,194,114,.17)}
.collection-card.grace-card-frame.theme-rot,.reveal-card.grace-card-frame.theme-rot .front{--card-bg-top:#2e1b0e;--card-bg-bottom:#140b06;--card-art-tint:rgba(227,139,70,.20)}
.collection-card.grace-card-frame.theme-holy,.reveal-card.grace-card-frame.theme-holy .front{--card-bg-top:#2b2614;--card-bg-bottom:#141106;--card-art-tint:rgba(227,199,108,.18)}
.collection-card.grace-card-frame.theme-fire,.reveal-card.grace-card-frame.theme-fire .front{--card-bg-top:#30170e;--card-bg-bottom:#160a06;--card-art-tint:rgba(216,106,66,.19)}
.collection-card.grace-card-frame.theme-frost,.reveal-card.grace-card-frame.theme-frost .front{--card-bg-top:#13242b;--card-bg-bottom:#081013;--card-art-tint:rgba(126,196,220,.18)}
.collection-card.grace-card-frame.theme-lightning,.reveal-card.grace-card-frame.theme-lightning .front{--card-bg-top:#2b2811;--card-bg-bottom:#131106;--card-art-tint:rgba(211,198,84,.18)}
.collection-card.grace-card-frame.theme-magic,.reveal-card.grace-card-frame.theme-magic .front{--card-bg-top:#171b35;--card-bg-bottom:#0b0d18;--card-art-tint:rgba(138,155,234,.18)}
.collection-card.grace-card-frame.theme-gravity,.reveal-card.grace-card-frame.theme-gravity .front{--card-bg-top:#241633;--card-bg-bottom:#100a17;--card-art-tint:rgba(162,120,223,.19)}
.collection-card.grace-card-frame.theme-dragon,.reveal-card.grace-card-frame.theme-dragon .front{--card-bg-top:#132a27;--card-bg-bottom:#081310;--card-art-tint:rgba(98,182,172,.17)}
.collection-card.grace-card-frame.theme-sleep,.reveal-card.grace-card-frame.theme-sleep .front{--card-bg-top:#251a30;--card-bg-bottom:#100b16;--card-art-tint:rgba(177,139,210,.18)}
.collection-card.grace-card-frame.theme-madness,.reveal-card.grace-card-frame.theme-madness .front{--card-bg-top:#2d2510;--card-bg-bottom:#151006;--card-art-tint:rgba(215,185,75,.18)}
.collection-card.grace-card-frame.theme-death,.reveal-card.grace-card-frame.theme-death .front{--card-bg-top:#1c1d25;--card-bg-bottom:#0d0e12;--card-art-tint:rgba(144,149,164,.16)}

/* Types de secours : volontairement plus sobres que les éléments. */
.collection-card.grace-card-frame.theme-type-weapon,.reveal-card.grace-card-frame.theme-type-weapon .front{--card-accent:#7b858d;--card-line:rgba(123,133,141,.48);--card-glow:rgba(123,133,141,.12);--card-bg-top:#1b1e20;--card-bg-bottom:#0d0f10;--card-art-tint:rgba(123,133,141,.11)}
.collection-card.grace-card-frame.theme-type-sword,.reveal-card.grace-card-frame.theme-type-sword .front{--card-accent:#8799a6;--card-line:rgba(135,153,166,.50);--card-glow:rgba(135,153,166,.13);--card-bg-top:#1b2226;--card-bg-bottom:#0c1012;--card-art-tint:rgba(135,153,166,.11)}
.collection-card.grace-card-frame.theme-type-greatsword,.reveal-card.grace-card-frame.theme-type-greatsword .front{--card-accent:#78808a;--card-line:rgba(120,128,138,.50);--card-glow:rgba(120,128,138,.13);--card-bg-top:#1c1f22;--card-bg-bottom:#0d0f10;--card-art-tint:rgba(120,128,138,.11)}
.collection-card.grace-card-frame.theme-type-katana,.reveal-card.grace-card-frame.theme-type-katana .front{--card-accent:#6f769d;--card-line:rgba(111,118,157,.52);--card-glow:rgba(111,118,157,.14);--card-bg-top:#1a1b28;--card-bg-bottom:#0c0d13;--card-art-tint:rgba(111,118,157,.12)}
.collection-card.grace-card-frame.theme-type-whip,.reveal-card.grace-card-frame.theme-type-whip .front{--card-accent:#925b67;--card-line:rgba(146,91,103,.52);--card-glow:rgba(146,91,103,.14);--card-bg-top:#25171a;--card-bg-bottom:#110a0c;--card-art-tint:rgba(146,91,103,.12)}
.collection-card.grace-card-frame.theme-type-claw,.reveal-card.grace-card-frame.theme-type-claw .front,
.collection-card.grace-card-frame.theme-type-fist,.reveal-card.grace-card-frame.theme-type-fist .front{--card-accent:#a0644f;--card-line:rgba(160,100,79,.52);--card-glow:rgba(160,100,79,.14);--card-bg-top:#251a15;--card-bg-bottom:#110c09;--card-art-tint:rgba(160,100,79,.12)}
.collection-card.grace-card-frame.theme-type-spear,.reveal-card.grace-card-frame.theme-type-spear .front{--card-accent:#66899a;--card-line:rgba(102,137,154,.50);--card-glow:rgba(102,137,154,.13);--card-bg-top:#172127;--card-bg-bottom:#0a1013;--card-art-tint:rgba(102,137,154,.11)}
.collection-card.grace-card-frame.theme-type-halberd,.reveal-card.grace-card-frame.theme-type-halberd .front{--card-accent:#817966;--card-line:rgba(129,121,102,.50);--card-glow:rgba(129,121,102,.12);--card-bg-top:#201e19;--card-bg-bottom:#0f0e0b;--card-art-tint:rgba(129,121,102,.10)}
.collection-card.grace-card-frame.theme-type-axe,.reveal-card.grace-card-frame.theme-type-axe .front{--card-accent:#846b58;--card-line:rgba(132,107,88,.50);--card-glow:rgba(132,107,88,.12);--card-bg-top:#211b17;--card-bg-bottom:#100c0a;--card-art-tint:rgba(132,107,88,.10)}
.collection-card.grace-card-frame.theme-type-hammer,.reveal-card.grace-card-frame.theme-type-hammer .front{--card-accent:#77746f;--card-line:rgba(119,116,111,.48);--card-glow:rgba(119,116,111,.11);--card-bg-top:#1d1c1b;--card-bg-bottom:#0e0d0c;--card-art-tint:rgba(119,116,111,.10)}
.collection-card.grace-card-frame.theme-type-bow,.reveal-card.grace-card-frame.theme-type-bow .front{--card-accent:#8b7554;--card-line:rgba(139,117,84,.50);--card-glow:rgba(139,117,84,.12);--card-bg-top:#211d15;--card-bg-bottom:#0f0d09;--card-art-tint:rgba(139,117,84,.10)}
.collection-card.grace-card-frame.theme-type-crossbow,.reveal-card.grace-card-frame.theme-type-crossbow .front{--card-accent:#927349;--card-line:rgba(146,115,73,.50);--card-glow:rgba(146,115,73,.12);--card-bg-top:#231c12;--card-bg-bottom:#100d08;--card-art-tint:rgba(146,115,73,.10)}
.collection-card.grace-card-frame.theme-type-dagger,.reveal-card.grace-card-frame.theme-type-dagger .front{--card-accent:#758995;--card-line:rgba(117,137,149,.48);--card-glow:rgba(117,137,149,.12);--card-bg-top:#192126;--card-bg-bottom:#0b0f11;--card-art-tint:rgba(117,137,149,.10)}
.collection-card.grace-card-frame.theme-type-scythe,.reveal-card.grace-card-frame.theme-type-scythe .front{--card-accent:#657d78;--card-line:rgba(101,125,120,.50);--card-glow:rgba(101,125,120,.12);--card-bg-top:#17201e;--card-bg-bottom:#0a0f0e;--card-art-tint:rgba(101,125,120,.10)}
.collection-card.grace-card-frame.theme-type-twinblade,.reveal-card.grace-card-frame.theme-type-twinblade .front{--card-accent:#777c98;--card-line:rgba(119,124,152,.50);--card-glow:rgba(119,124,152,.12);--card-bg-top:#1a1b25;--card-bg-bottom:#0c0d12;--card-art-tint:rgba(119,124,152,.10)}
.collection-card.grace-card-frame.theme-type-torch,.reveal-card.grace-card-frame.theme-type-torch .front{--card-accent:#9a7047;--card-line:rgba(154,112,71,.50);--card-glow:rgba(154,112,71,.13);--card-bg-top:#241b12;--card-bg-bottom:#100c08;--card-art-tint:rgba(154,112,71,.11)}
.collection-card.grace-card-frame.theme-type-shield,.reveal-card.grace-card-frame.theme-type-shield .front{--card-accent:#657681;--card-line:rgba(101,118,129,.50);--card-glow:rgba(101,118,129,.12);--card-bg-top:#182024;--card-bg-bottom:#0b0f11;--card-art-tint:rgba(101,118,129,.10)}
.collection-card.grace-card-frame.theme-type-staff,.reveal-card.grace-card-frame.theme-type-staff .front{--card-accent:#6676a2;--card-line:rgba(102,118,162,.52);--card-glow:rgba(102,118,162,.14);--card-bg-top:#191c2b;--card-bg-bottom:#0b0d14;--card-art-tint:rgba(102,118,162,.12)}
.collection-card.grace-card-frame.theme-type-incantation,.reveal-card.grace-card-frame.theme-type-incantation .front{--card-accent:#b19a67;--card-line:rgba(177,154,103,.52);--card-glow:rgba(177,154,103,.13);--card-bg-top:#262117;--card-bg-bottom:#110f0a;--card-art-tint:rgba(177,154,103,.11)}
.collection-card.grace-card-frame.theme-type-sorcery,.reveal-card.grace-card-frame.theme-type-sorcery .front{--card-accent:#7183bb;--card-line:rgba(113,131,187,.52);--card-glow:rgba(113,131,187,.14);--card-bg-top:#181d30;--card-bg-bottom:#0b0e17;--card-art-tint:rgba(113,131,187,.12)}
.collection-card.grace-card-frame.theme-type-talisman,.reveal-card.grace-card-frame.theme-type-talisman .front{--card-accent:#b18b45;--card-line:rgba(177,139,69,.52);--card-glow:rgba(177,139,69,.13);--card-bg-top:#272013;--card-bg-bottom:#120e08;--card-art-tint:rgba(177,139,69,.11)}
.collection-card.grace-card-frame.theme-type-ring,.reveal-card.grace-card-frame.theme-type-ring .front{--card-accent:#baa66a;--card-line:rgba(186,166,106,.52);--card-glow:rgba(186,166,106,.13);--card-bg-top:#282419;--card-bg-bottom:#12100b;--card-art-tint:rgba(186,166,106,.11)}
.collection-card.grace-card-frame.theme-type-item,.reveal-card.grace-card-frame.theme-type-item .front{--card-accent:#9e967a;--card-line:rgba(158,150,122,.48);--card-glow:rgba(158,150,122,.11);--card-bg-top:#211f19;--card-bg-bottom:#0f0e0b;--card-art-tint:rgba(158,150,122,.10)}
.collection-card.grace-card-frame.theme-type-map,.reveal-card.grace-card-frame.theme-type-map .front{--card-accent:#967c5d;--card-line:rgba(150,124,93,.50);--card-glow:rgba(150,124,93,.12);--card-bg-top:#241d16;--card-bg-bottom:#100d0a;--card-art-tint:rgba(150,124,93,.10)}
.collection-card.grace-card-frame.theme-type-armor-head,.reveal-card.grace-card-frame.theme-type-armor-head .front{--card-accent:#92989a;--card-line:rgba(146,152,154,.50);--card-glow:rgba(146,152,154,.12);--card-bg-top:#202223;--card-bg-bottom:#0e0f10;--card-art-tint:rgba(146,152,154,.10)}
.collection-card.grace-card-frame.theme-type-armor-chest,.reveal-card.grace-card-frame.theme-type-armor-chest .front{--card-accent:#987553;--card-line:rgba(152,117,83,.50);--card-glow:rgba(152,117,83,.12);--card-bg-top:#241d16;--card-bg-bottom:#100d0a;--card-art-tint:rgba(152,117,83,.10)}
.collection-card.grace-card-frame.theme-type-armor-hands,.reveal-card.grace-card-frame.theme-type-armor-hands .front{--card-accent:#7e7165;--card-line:rgba(126,113,101,.48);--card-glow:rgba(126,113,101,.11);--card-bg-top:#201c19;--card-bg-bottom:#0f0d0b;--card-art-tint:rgba(126,113,101,.10)}
.collection-card.grace-card-frame.theme-type-armor-legs,.reveal-card.grace-card-frame.theme-type-armor-legs .front{--card-accent:#687078;--card-line:rgba(104,112,120,.48);--card-glow:rgba(104,112,120,.11);--card-bg-top:#1a1d20;--card-bg-bottom:#0c0e0f;--card-art-tint:rgba(104,112,120,.10)}
.collection-card.grace-card-frame.theme-type-consumable,.reveal-card.grace-card-frame.theme-type-consumable .front{--card-accent:#7d895d;--card-line:rgba(125,137,93,.50);--card-glow:rgba(125,137,93,.12);--card-bg-top:#202319;--card-bg-bottom:#0e100b;--card-art-tint:rgba(125,137,93,.10)}
.collection-card.grace-card-frame.theme-type-key,.reveal-card.grace-card-frame.theme-type-key .front{--card-accent:#a58a50;--card-line:rgba(165,138,80,.50);--card-glow:rgba(165,138,80,.12);--card-bg-top:#251f14;--card-bg-bottom:#110e09;--card-art-tint:rgba(165,138,80,.10)}
.collection-card.grace-card-frame.theme-type-upgrade,.reveal-card.grace-card-frame.theme-type-upgrade .front{--card-accent:#737d82;--card-line:rgba(115,125,130,.48);--card-glow:rgba(115,125,130,.11);--card-bg-top:#1b1e20;--card-bg-bottom:#0c0f10;--card-art-tint:rgba(115,125,130,.10)}
.collection-card.grace-card-frame.theme-type-soul,.reveal-card.grace-card-frame.theme-type-soul .front,
.collection-card.grace-card-frame.theme-type-summon,.reveal-card.grace-card-frame.theme-type-summon .front{--card-accent:#7d8294;--card-line:rgba(125,130,148,.50);--card-glow:rgba(125,130,148,.13);--card-bg-top:#1b1c25;--card-bg-bottom:#0c0d12;--card-art-tint:rgba(125,130,148,.11)}
.collection-card.grace-card-frame.theme-type-ash,.reveal-card.grace-card-frame.theme-type-ash .front{--card-accent:#91654c;--card-line:rgba(145,101,76,.50);--card-glow:rgba(145,101,76,.12);--card-bg-top:#241912;--card-bg-bottom:#100b08;--card-art-tint:rgba(145,101,76,.10)}
.collection-card.grace-card-frame.theme-type-ember,.reveal-card.grace-card-frame.theme-type-ember .front{--card-accent:#a26743;--card-line:rgba(162,103,67,.50);--card-glow:rgba(162,103,67,.13);--card-bg-top:#281a11;--card-bg-bottom:#120b07;--card-art-tint:rgba(162,103,67,.11)}
.collection-card.grace-card-frame.theme-type-boss,.reveal-card.grace-card-frame.theme-type-boss .front{--card-accent:#98505a;--card-line:rgba(152,80,90,.54);--card-glow:rgba(152,80,90,.15);--card-bg-top:#2a1519;--card-bg-bottom:#12090b;--card-art-tint:rgba(152,80,90,.12)}

/* Le fond complet de la carte suit l'identité principale. */
.collection-card.grace-card-frame{
  background:
    radial-gradient(circle at 50% 4%,var(--card-art-tint) 0%,transparent 47%),
    linear-gradient(180deg,var(--card-bg-top) 0%,var(--card-bg-bottom) 100%)!important;
}
.reveal-card.grace-card-frame .front{
  background:
    radial-gradient(circle at 50% 4%,var(--card-art-tint) 0%,transparent 47%),
    linear-gradient(180deg,var(--card-bg-top) 0%,var(--card-bg-bottom) 100%)!important;
}
.collection-card.grace-card-frame .card-art-wrap,
.reveal-card.grace-card-frame .reveal-art{
  background:radial-gradient(circle at 50% 42%,var(--card-art-tint) 0%,rgba(13,15,12,.92) 70%,rgba(8,10,8,.98) 100%)!important;
}

/* Les légendaires gardent leur fond rouge spécial ; l'effet colore toujours le contour/glow. */
.collection-card.grace-card-frame.rarity-l,
.reveal-card.grace-card-frame.rarity-l .front{
  background:
    radial-gradient(circle at 50% 8%,var(--card-art-tint) 0%,transparent 48%),
    linear-gradient(180deg,#401313 0%,#260b0b 48%,#150707 100%)!important;
}
.collection-card.grace-card-frame.rarity-l .card-art-wrap,
.reveal-card.grace-card-frame.rarity-l .reveal-art{
  background:radial-gradient(circle at 50% 42%,var(--card-art-tint) 0%,rgba(64,17,17,.90) 58%,rgba(20,6,6,.98) 100%)!important;
}

/* Plus de grand rectangle autour de la zone d'effet : seuls les badges restent. */
.collection-card.grace-card-frame .card-passive-slots,
.reveal-card.grace-card-frame .card-passive-slots,
.opening-overlay .reveal-card.grace-card-frame .card-passive-slots{
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:2px 0!important;
}
.collection-card.grace-card-frame .card-passive-slots.has-none,
.reveal-card.grace-card-frame .card-passive-slots.has-none,
.opening-overlay .reveal-card.grace-card-frame .card-passive-slots.has-none{
  background:transparent!important;
  border:0!important;
}

/* Chaque badge garde sa propre couleur. Les types ont une saturation volontairement plus basse. */
.effect-type-weapon{--effect-color:#7b858d}.effect-type-sword{--effect-color:#8799a6}.effect-type-greatsword{--effect-color:#78808a}.effect-type-katana{--effect-color:#6f769d}.effect-type-whip{--effect-color:#925b67}.effect-type-claw,.effect-type-fist{--effect-color:#a0644f}.effect-type-spear{--effect-color:#66899a}.effect-type-halberd{--effect-color:#817966}.effect-type-axe{--effect-color:#846b58}.effect-type-hammer{--effect-color:#77746f}.effect-type-bow{--effect-color:#8b7554}.effect-type-crossbow{--effect-color:#927349}.effect-type-dagger{--effect-color:#758995}.effect-type-scythe{--effect-color:#657d78}.effect-type-twinblade{--effect-color:#777c98}.effect-type-torch{--effect-color:#9a7047}.effect-type-shield{--effect-color:#657681}.effect-type-staff{--effect-color:#6676a2}.effect-type-incantation{--effect-color:#b19a67}.effect-type-sorcery{--effect-color:#7183bb}.effect-type-talisman{--effect-color:#b18b45}.effect-type-ring{--effect-color:#baa66a}.effect-type-item{--effect-color:#9e967a}.effect-type-map{--effect-color:#967c5d}.effect-type-armor-head{--effect-color:#92989a}.effect-type-armor-chest{--effect-color:#987553}.effect-type-armor-hands{--effect-color:#7e7165}.effect-type-armor-legs{--effect-color:#687078}.effect-type-consumable{--effect-color:#7d895d}.effect-type-key{--effect-color:#a58a50}.effect-type-upgrade{--effect-color:#737d82}.effect-type-soul,.effect-type-summon{--effect-color:#7d8294}.effect-type-ash{--effect-color:#91654c}.effect-type-ember{--effect-color:#a26743}.effect-type-boss{--effect-color:#98505a}

.collection-card.grace-card-frame .card-affinity-tags>span,
.reveal-card.grace-card-frame .card-affinity-tags>span,
.opening-overlay .reveal-card.grace-card-frame .card-affinity-tags>span{
  background:color-mix(in srgb,var(--effect-color,var(--card-accent)) 10%,rgba(5,7,5,.92))!important;
  box-shadow:inset 0 0 12px color-mix(in srgb,var(--effect-color,var(--card-accent)) 9%,transparent),0 0 10px color-mix(in srgb,var(--effect-color,var(--card-accent)) 7%,transparent)!important;
}

/* Gracebound — rendu de carte unifié dans les sélecteurs Fétiche / cartes liées */
.talent-picker-grid{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:12px!important;
  align-items:stretch!important;
}
.talent-picker-card.collection-card.grace-card-frame{
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  padding:0!important;
  border-radius:13px!important;
  overflow:hidden!important;
  display:grid!important;
  grid-template-rows:auto auto!important;
  text-align:left!important;
  cursor:pointer!important;
  appearance:none!important;
  font:inherit!important;
  color:inherit!important;
}
.talent-picker-card.collection-card.grace-card-frame:hover:not(:disabled){
  transform:translateY(-2px)!important;
}
.talent-picker-card.collection-card.grace-card-frame .card-art-wrap{
  height:150px!important;
  margin:8px 8px 0!important;
}
.talent-picker-card.collection-card.grace-card-frame .card-art{
  width:90%!important;
  height:90%!important;
  object-fit:contain!important;
  transform:none!important;
}
.talent-picker-card.collection-card.grace-card-frame .card-info{
  padding:8px!important;
  grid-template-rows:minmax(34px,auto) 36px!important;
  gap:6px!important;
}
.talent-picker-card.collection-card.grace-card-frame .card-info h3{
  height:34px!important;
  min-height:34px!important;
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  text-align:center!important;
  font-size:10px!important;
  line-height:1.18!important;
  overflow:hidden!important;
}
.talent-picker-card.collection-card.grace-card-frame .card-passive-slots{
  height:36px!important;
  min-height:36px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  display:flex!important;
  align-items:center!important;
}
.talent-picker-card.collection-card.grace-card-frame .card-passive-slots .card-affinity-tags{
  width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:5px!important;
}
.talent-picker-card.collection-card.grace-card-frame .card-passive-slots.has-one .card-affinity-tags{
  grid-template-columns:minmax(0,88%)!important;
  justify-content:center!important;
}
.talent-picker-card.collection-card.grace-card-frame .card-passive-slots .card-affinity-tags>span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:26px!important;
  min-height:26px!important;
  padding:0 5px!important;
  border-radius:7px!important;
  background:rgba(5,7,5,.62)!important;
  border:1px solid var(--effect-color,var(--card-accent))!important;
  color:var(--effect-color,var(--card-accent))!important;
  font-size:6px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.2px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.talent-picker-card.collection-card.grace-card-frame .card-passive-slots.has-none{
  display:none!important;
}
.talent-picker-card.collection-card.grace-card-frame .quantity-badge{
  z-index:6!important;
}
.talent-picker-card.collection-card.grace-card-frame .talent-picker-forge-badge,
.talent-picker-card.collection-card.grace-card-frame .talent-picker-base-badge,
.talent-picker-card.collection-card.grace-card-frame .talent-picker-enchanted-badge{
  z-index:7!important;
}
.talent-picker-card.collection-card.grace-card-frame .talent-picker-forge-info{
  position:absolute!important;
  left:8px!important;
  right:8px!important;
  bottom:5px!important;
  z-index:7!important;
  pointer-events:none!important;
  text-align:center!important;
  font-size:6px!important;
  color:#d8c98e!important;
}
.talent-picker-card.collection-card.grace-card-frame.is-disabled{
  opacity:.45!important;
}
.talent-picker-card.collection-card.grace-card-frame .talent-picker-disabled{
  left:8px!important;
  right:8px!important;
  bottom:48px!important;
  z-index:10!important;
}
.talent-picker-hover-preview{
  width:240px!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.talent-picker-hover-preview .talent-picker-preview-card{
  width:240px!important;
  pointer-events:none!important;
}
.talent-picker-hover-preview .talent-picker-preview-card .card-art-wrap{
  height:235px!important;
}
.talent-picker-hover-preview .talent-picker-preview-card .card-art{
  object-fit:contain!important;
  transform:none!important;
}
.talent-picker-hover-preview .talent-picker-preview-card .card-info{
  grid-template-rows:minmax(42px,auto) 42px!important;
}
.talent-picker-hover-preview .talent-picker-preview-card .card-passive-slots{
  border:0!important;
  background:transparent!important;
}
@media(max-width:900px){
  .talent-picker-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:600px){
  .talent-picker-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .talent-picker-card.collection-card.grace-card-frame .card-art-wrap{height:126px!important}
}

/* === Gracebound · Viewer carte XL === */
.card-image-viewer{
  padding:12px!important;
}
.card-image-viewer-content{
  width:min(720px,94vw)!important;
  max-width:94vw!important;
  max-height:96vh!important;
}
.card-image-viewer-card .collection-card.grace-card-frame,
.collection-viewer-card-host .collection-card.grace-card-frame{
  width:min(650px,90vw)!important;
  max-width:650px!important;
  min-height:min(86vh,860px)!important;
  height:auto!important;
}
.card-image-viewer-card .collection-card.grace-card-frame .card-art-wrap,
.collection-viewer-card-host .collection-card.grace-card-frame .card-art-wrap{
  height:min(62vh,610px)!important;
  min-height:min(62vh,610px)!important;
  flex:0 0 min(62vh,610px)!important;
}
.card-image-viewer-card .collection-card.grace-card-frame .card-art,
.collection-viewer-card-host .collection-card.grace-card-frame .card-art{
  width:96%!important;
  height:96%!important;
  max-width:96%!important;
  max-height:96%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
.card-image-viewer-card .collection-card.grace-card-frame .card-info,
.collection-viewer-card-host .collection-card.grace-card-frame .card-info{
  min-height:170px!important;
  padding:14px 16px 16px!important;
}
.card-image-viewer-card .collection-card.grace-card-frame .card-info h3,
.collection-viewer-card-host .collection-card.grace-card-frame .card-info h3{
  font-size:clamp(18px,2vw,25px)!important;
  line-height:1.12!important;
  min-height:auto!important;
  height:auto!important;
}
.card-image-viewer-card .collection-card.grace-card-frame .card-passive-slots,
.collection-viewer-card-host .collection-card.grace-card-frame .card-passive-slots{
  min-height:52px!important;
  height:auto!important;
}
.card-image-viewer-card .collection-card.grace-card-frame .card-passive-slots .card-affinity-tags>span,
.collection-viewer-card-host .collection-card.grace-card-frame .card-passive-slots .card-affinity-tags>span{
  min-height:38px!important;
  height:38px!important;
  font-size:10px!important;
  padding:0 14px!important;
}
.collection-card-viewer-content.collection-full-card-viewer{
  width:min(720px,94vw)!important;
  max-width:94vw!important;
  max-height:96vh!important;
  padding:14px!important;
  overflow:auto!important;
}
.collection-viewer-actions{
  width:min(650px,90vw)!important;
  max-width:650px!important;
}
.card-viewer-close{
  top:-8px!important;
  right:-8px!important;
  width:46px!important;
  height:46px!important;
}

@media(max-width:760px){
  .card-image-viewer{padding:8px!important}
  .card-image-viewer-content,
  .collection-card-viewer-content.collection-full-card-viewer{
    width:96vw!important;
    max-width:96vw!important;
    max-height:97vh!important;
  }
  .card-image-viewer-card .collection-card.grace-card-frame,
  .collection-viewer-card-host .collection-card.grace-card-frame{
    width:92vw!important;
    max-width:92vw!important;
    min-height:auto!important;
  }
  .card-image-viewer-card .collection-card.grace-card-frame .card-art-wrap,
  .collection-viewer-card-host .collection-card.grace-card-frame .card-art-wrap{
    height:min(58vh,520px)!important;
    min-height:min(58vh,520px)!important;
    flex-basis:min(58vh,520px)!important;
  }
  .collection-viewer-actions{
    width:92vw!important;
    max-width:92vw!important;
  }
}

/* === Gracebound · Correctif sélecteur cartes Fétiche / cartes liées : hauteur stable === */
.talent-card-picker-dialog .talent-picker-grid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  grid-auto-rows:252px!important;
  grid-auto-flow:row!important;
  align-items:stretch!important;
  align-content:start!important;
  gap:12px!important;
}
.talent-card-picker-dialog .talent-picker-card.collection-card.grace-card-frame{
  display:grid!important;
  grid-template-rows:158px 82px!important;
  width:100%!important;
  height:252px!important;
  min-height:252px!important;
  max-height:252px!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  align-self:stretch!important;
  border-radius:13px!important;
}
.talent-card-picker-dialog .talent-picker-card.collection-card.grace-card-frame .card-art-wrap{
  display:grid!important;
  place-items:center!important;
  position:relative!important;
  width:auto!important;
  height:150px!important;
  min-height:150px!important;
  max-height:150px!important;
  margin:8px 8px 0!important;
  overflow:hidden!important;
}
.talent-card-picker-dialog .talent-picker-card.collection-card.grace-card-frame .card-art{
  display:block!important;
  position:static!important;
  width:92%!important;
  height:92%!important;
  max-width:92%!important;
  max-height:92%!important;
  margin:0!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}
.talent-card-picker-dialog .talent-picker-card.collection-card.grace-card-frame .card-info{
  display:grid!important;
  grid-template-rows:36px 34px!important;
  width:100%!important;
  height:82px!important;
  min-height:82px!important;
  padding:6px 8px 8px!important;
  gap:4px!important;
  overflow:hidden!important;
}
.talent-card-picker-dialog .talent-picker-card.collection-card.grace-card-frame .card-info h3{
  display:-webkit-box!important;
  width:100%!important;
  height:36px!important;
  min-height:36px!important;
  margin:0!important;
  overflow:hidden!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  line-clamp:2!important;
  text-align:center!important;
  font-size:10px!important;
  line-height:1.16!important;
}
.talent-card-picker-dialog .talent-picker-card.collection-card.grace-card-frame .card-passive-slots{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.talent-card-picker-dialog .talent-picker-card.collection-card.grace-card-frame .card-passive-slots.has-none{
  display:block!important;
  visibility:hidden!important;
}
.talent-card-picker-dialog .talent-picker-card.collection-card.grace-card-frame .card-passive-slots .card-affinity-tags{
  width:100%!important;
}

@media(max-width:900px){
  .talent-card-picker-dialog .talent-picker-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-rows:252px!important;
  }
}
@media(max-width:600px){
  .talent-card-picker-dialog .talent-picker-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:228px!important;
  }
  .talent-card-picker-dialog .talent-picker-card.collection-card.grace-card-frame{
    grid-template-rows:136px 80px!important;
    height:228px!important;
    min-height:228px!important;
    max-height:228px!important;
  }
  .talent-card-picker-dialog .talent-picker-card.collection-card.grace-card-frame .card-art-wrap{
    height:128px!important;
    min-height:128px!important;
    max-height:128px!important;
  }
  .talent-card-picker-dialog .talent-picker-card.collection-card.grace-card-frame .card-info{
    height:80px!important;
    min-height:80px!important;
  }
}

/* Patch: zoom carte sans barre ni croix */
.collection-card-viewer-content.collection-full-card-viewer{
  overflow:hidden!important;
  scrollbar-width:none!important;
  -ms-overflow-style:none!important;
}
.collection-card-viewer-content.collection-full-card-viewer::-webkit-scrollbar{
  display:none!important;
  width:0!important;
  height:0!important;
}
.collection-card-viewer,
.collection-card-viewer-content,
.collection-viewer-card-host{
  overflow:hidden!important;
}
.card-viewer-close{
  display:none!important;
}


/* Gracebound · Carte fétiche : aperçu hover XL + valeur Risk / Reward */
.talent-picker-hover-preview{
  width:330px!important;
  max-width:min(330px,calc(100vw - 24px))!important;
}
.talent-picker-hover-preview .talent-picker-preview-card{
  width:330px!important;
  max-width:100%!important;
  min-height:500px!important;
  height:auto!important;
  overflow:hidden!important;
}
.talent-picker-hover-preview .talent-picker-preview-card .card-art-wrap{
  height:330px!important;
  min-height:330px!important;
  flex-basis:330px!important;
  margin:10px 10px 0!important;
}
.talent-picker-hover-preview .talent-picker-preview-card .card-art{
  width:94%!important;
  height:94%!important;
  max-width:94%!important;
  max-height:94%!important;
  object-fit:contain!important;
  object-position:center!important;
}
.talent-picker-hover-preview .talent-picker-preview-card .card-info{
  display:flex!important;
  flex-direction:column!important;
  gap:9px!important;
  min-height:150px!important;
  height:auto!important;
  padding:10px 12px 12px!important;
}
.talent-picker-hover-preview .talent-picker-preview-card .card-info h3{
  min-height:auto!important;
  font-size:18px!important;
  line-height:1.15!important;
  text-align:center!important;
}
.talent-picker-hover-preview .talent-picker-preview-card .card-passive-slots{
  min-height:34px!important;
  height:auto!important;
}
.talent-picker-risk-reward{
  margin-top:auto;
  display:grid;
  grid-template-columns:1fr auto;
  gap:2px 12px;
  align-items:center;
  padding:10px 11px;
  border:1px solid color-mix(in srgb,var(--card-accent,#c8ad6a) 62%,transparent);
  border-radius:10px;
  background:color-mix(in srgb,var(--card-accent,#c8ad6a) 10%,rgba(8,10,8,.92));
}
.talent-picker-risk-reward small{
  margin:0!important;
  color:#9d8e66!important;
  font-size:7.5px!important;
  font-weight:900!important;
  letter-spacing:1.35px!important;
}
.talent-picker-risk-reward strong{
  grid-row:1 / span 2;
  grid-column:2;
  color:#ead27e;
  font:600 22px Georgia,serif;
  white-space:nowrap;
}
.talent-picker-risk-reward span{
  color:#989d92;
  font-size:8px;
  line-height:1.35;
}


/* Gracebound · Carte fétiche : hover au premier plan + % toujours visible */
.talent-picker-hover-preview{
  z-index:120500!important;
  width:410px!important;
  max-width:min(410px,calc(100vw - 28px))!important;
  padding:12px!important;
  overflow:visible!important;
  isolation:isolate;
}
.talent-picker-hover-preview .talent-picker-preview-card{
  width:386px!important;
  max-width:100%!important;
  min-height:570px!important;
  height:auto!important;
}
.talent-picker-hover-preview .talent-picker-preview-card .card-art-wrap{
  height:390px!important;
  min-height:390px!important;
  flex-basis:390px!important;
}
.talent-picker-risk-reward-floating{
  position:absolute;
  z-index:20;
  top:24px;
  right:24px;
  min-width:128px;
  display:grid;
  justify-items:end;
  gap:2px;
  padding:10px 12px;
  border:1px solid rgba(230,196,103,.82);
  border-radius:11px;
  background:rgba(9,10,8,.96);
  box-shadow:0 10px 30px rgba(0,0,0,.65),0 0 22px rgba(218,185,91,.18);
  pointer-events:none;
}
.talent-picker-risk-reward-floating small{
  color:#a99a6c;
  font-size:7px;
  font-weight:900;
  letter-spacing:1.25px;
}
.talent-picker-risk-reward-floating strong{
  color:#f0d26f;
  font:700 25px Georgia,serif;
  line-height:1;
  white-space:nowrap;
}
.talent-picker-risk-reward-floating span{
  max-width:190px;
  color:#a5aa9e;
  font-size:7px;
  line-height:1.3;
  text-align:right;
}
@media(max-width:760px),(hover:none){
  .talent-picker-hover-preview{display:none!important}
}


/* Gracebound · Emplacements fétiches : % réels apportés au build dans le hover */
.talent-picker-hover-preview .talent-picker-preview-card .card-info{
  min-height:0!important;
}
.talent-picker-build-bonus{
  margin-top:4px;
  padding:10px 11px;
  border-top:1px solid color-mix(in srgb,var(--card-accent,#c8ad6a) 42%,transparent);
  background:color-mix(in srgb,var(--card-accent,#c8ad6a) 7%,rgba(7,9,7,.78));
  border-radius:9px;
}
.talent-picker-build-bonus>small{
  display:block;
  margin:0 0 7px!important;
  color:#d3b863!important;
  font-size:7.5px!important;
  font-weight:900!important;
  letter-spacing:1.35px!important;
  text-align:center;
}
.talent-picker-build-bonus>div{
  display:grid;
  gap:5px;
}
.talent-picker-build-bonus>div>span{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:5px 7px;
  border:1px solid rgba(255,255,255,.055);
  border-radius:7px;
  background:rgba(7,9,7,.58);
}
.talent-picker-build-bonus em{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:#b9beb3;
  font-size:9px;
  font-style:normal;
}
.talent-picker-build-bonus strong{
  flex:0 0 auto;
  color:#efd06d;
  font:700 12px Georgia,serif;
  white-space:nowrap;
}

/* Gracebound patch — favorite card panel overlap fix */
.talent-dashboard-favorite .talent-dashboard-section-head{
  align-items:flex-start;
  gap:10px;
}
.talent-dashboard-favorite .favorite-card-actions-compact{
  flex-wrap:wrap!important;
  justify-content:flex-end;
  align-items:center;
}
.talent-dashboard-favorite .talent-favorite-compact > div > .rarity-badge{
  position:static!important;
  left:auto!important;
  top:auto!important;
  min-width:0;
  height:auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:flex-start;
  margin:0 0 2px;
}
.talent-dashboard-favorite .talent-favorite-compact strong,
.talent-dashboard-favorite .talent-favorite-compact small{
  max-width:100%;
}

/* Gracebound — navigation mobile glissable */
@media(max-width:760px){
  .nav-list-mobile{
    display:flex!important;
    flex-direction:row!important;
    justify-content:flex-start!important;
    align-items:center!important;
    gap:4px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    overscroll-behavior-x:contain;
    -webkit-overflow-scrolling:touch;
    touch-action:pan-x;
    scroll-snap-type:x proximity;
    scrollbar-width:none;
    padding:6px 8px!important;
  }
  .nav-list-mobile::-webkit-scrollbar{display:none}
  .nav-list-mobile .nav-item,
  .nav-list-mobile .nav-item:nth-child(n+6){
    display:flex!important;
    flex:0 0 auto!important;
    min-width:76px;
    max-width:94px;
    padding:0 9px!important;
    scroll-snap-align:start;
  }
  .nav-list-mobile .nav-item>span:not(.nav-icon){
    max-width:82px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .nav-list-mobile .nav-event-badge{
    position:absolute;
    top:3px;
    right:5px;
  }
}


/* Gracebound — notification mobile : badge attaché à son propre onglet */
@media(max-width:760px){
  .nav-list-mobile .nav-item{
    position:relative!important;
  }
  .nav-list-mobile .nav-event-badge{
    top:2px!important;
    right:2px!important;
    z-index:4!important;
    pointer-events:none!important;
  }
}

/* Gracebound — Résumé des affinités regroupé
   Une affinité n'apparaît plus dans 4 sections différentes. */
.talent-affinity-summary-group{
    min-width:0;
}
.talent-affinity-legend{
    display:flex;
    flex-wrap:wrap;
    gap:5px 10px;
    margin:0 0 8px;
    color:#73796f;
    font-size:8px;
    line-height:1.35;
}
.talent-affinity-legend span{
    display:inline-flex;
    align-items:center;
    gap:4px;
}
.talent-affinity-legend b{
    color:#a99a70;
    font-weight:850;
}
.talent-affinity-summary-list{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:7px;
}
.talent-affinity-summary-row{
    min-width:0;
    padding:8px 9px;
    border:1px solid #2c3027;
    border-radius:11px;
    background:#11140f;
    display:flex;
    flex-direction:column;
    gap:6px;
}
.talent-affinity-summary-name{
    min-width:0;
    color:#c0c2ba;
    font-size:10px;
    line-height:1.2;
    font-weight:750;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.talent-affinity-summary-values{
    display:flex;
    flex-wrap:wrap;
    gap:5px;
}
.talent-affinity-summary-values>span{
    display:inline-flex;
    align-items:center;
    gap:4px;
    min-width:0;
    padding:3px 6px;
    border:1px solid #30342b;
    border-radius:999px;
    background:#0d100c;
    white-space:nowrap;
}
.talent-affinity-summary-values em{
    color:#777d72;
    font-size:7.5px;
    font-style:normal;
    font-weight:750;
}
.talent-affinity-summary-values strong{
    color:#dfca82;
    font-size:8.5px;
    font-weight:850;
}
.talent-center-build-tooltip .talent-affinity-summary-list{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.talent-center-build-tooltip .talent-affinity-summary-name{
    font-size:11px;
}
.talent-center-build-tooltip .talent-affinity-summary-values em{
    font-size:8px;
}
.talent-center-build-tooltip .talent-affinity-summary-values strong{
    font-size:9px;
}

@media(max-width:760px){
    .talent-affinity-summary-list,
    .talent-center-build-tooltip .talent-affinity-summary-list{
        grid-template-columns:1fr;
    }
    .talent-affinity-legend{
        font-size:8.5px;
    }
    .talent-affinity-summary-name{
        font-size:10.5px;
    }
}

/* Gracebound — résumé final : une seule valeur totale par affinité */
.talent-affinity-total-list{
    display:flex;
    flex-wrap:wrap;
    gap:7px;
}
.talent-affinity-total-chip{
    display:inline-flex;
    align-items:center;
    gap:6px;
    max-width:100%;
    min-height:31px;
    padding:6px 10px;
    border:1px solid #30342b;
    border-radius:999px;
    background:#11140f;
    white-space:nowrap;
}
.talent-affinity-total-chip b{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
    color:#bfc2b9;
    font-size:9px;
    font-weight:750;
}
.talent-affinity-total-chip strong{
    color:#dfca82;
    font-size:9px;
    font-weight:900;
}
.talent-center-build-tooltip .talent-affinity-total-chip{
    min-height:34px;
    padding:7px 11px;
}
.talent-center-build-tooltip .talent-affinity-total-chip b,
.talent-center-build-tooltip .talent-affinity-total-chip strong{
    font-size:10px;
}
@media(max-width:760px){
    .talent-affinity-total-list{gap:6px}
    .talent-affinity-total-chip{
        min-height:34px;
        padding:7px 10px;
    }
    .talent-affinity-total-chip b,
    .talent-affinity-total-chip strong{
        font-size:9.5px;
    }
}

/* Gracebound — résumé release : on masque les bonus < 1 % en haut
   et on donne plus de présence aux affinités du build. */
.talent-bonus-main-grid-active-only{
    margin-bottom:10px;
}
.talent-affinity-total-group>small{
    font-size:10px!important;
    letter-spacing:1.6px!important;
}
.talent-affinity-total-list{
    gap:9px!important;
}
.talent-affinity-total-chip{
    min-height:36px!important;
    padding:8px 12px!important;
    gap:8px!important;
}
.talent-affinity-total-chip b{
    font-size:10px!important;
}
.talent-affinity-total-chip strong{
    font-size:10.5px!important;
}
.talent-center-build-tooltip .talent-affinity-total-chip{
    min-height:39px!important;
    padding:9px 13px!important;
}
.talent-center-build-tooltip .talent-affinity-total-chip b{
    font-size:11px!important;
}
.talent-center-build-tooltip .talent-affinity-total-chip strong{
    font-size:11.5px!important;
}

@media(max-width:760px){
    .talent-affinity-total-chip{
        min-height:38px!important;
        padding:9px 12px!important;
    }
    .talent-affinity-total-chip b{
        font-size:10.5px!important;
    }
    .talent-affinity-total-chip strong{
        font-size:11px!important;
    }
}

/* Gracebound — bouton Google */
.btn-google{
    background:#ffffff!important;
    border-color:#dadce0!important;
    color:#3c4043!important;
    box-shadow:0 1px 2px rgba(0,0,0,.18)!important;
}
.btn-google:hover{
    background:#f8f9fa!important;
    border-color:#c7c9cc!important;
    color:#202124!important;
    box-shadow:0 2px 5px rgba(0,0,0,.22)!important;
}
.btn-google:active{
    background:#f1f3f4!important;
    transform:translateY(1px);
}

/* Gracebound — logos OAuth + couleur Twitch */
.auth-provider-logo{
    width:20px;
    height:20px;
    object-fit:contain;
    flex:0 0 20px;
    border-radius:4px;
}
.btn-twitch{
    background:#9146ff!important;
    border-color:#9146ff!important;
    color:#fff!important;
    box-shadow:0 1px 2px rgba(0,0,0,.18)!important;
}
.btn-twitch:hover:not(:disabled){
    background:#772ce8!important;
    border-color:#772ce8!important;
    color:#fff!important;
    box-shadow:0 2px 5px rgba(0,0,0,.22)!important;
}

/* Gracebound — harmonisation logo Discord */
.btn-discord .auth-provider-logo{
    width:24px;
    height:24px;
    flex-basis:24px;
}


/* === Gracebound · Boss Full Art — collection normale + zoom corrigé ===
   IMPORTANT : ciblage par data-category, pas par theme-*.
   Ainsi un Boss Givre/Saignement/etc. reste bien reconnu comme Boss. */

/* 1) COLLECTION NORMALE : le Boss reprend exactement le gabarit des autres cartes. */
#cardGrid > .collection-card[data-category="Boss" i],
.card-grid > .collection-card[data-category="Boss" i]{
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
}
#cardGrid > .collection-card[data-category="Boss" i] .card-art-wrap,
.card-grid > .collection-card[data-category="Boss" i] .card-art-wrap{
  position:relative!important;
  inset:auto!important;
  width:auto!important;
  height:218px!important;
  min-height:218px!important;
  max-height:218px!important;
  flex:0 0 218px!important;
  margin:9px 9px 0!important;
  overflow:hidden!important;
  display:grid!important;
  place-items:center!important;
}
#cardGrid > .collection-card[data-category="Boss" i] .card-art,
.card-grid > .collection-card[data-category="Boss" i] .card-art{
  position:static!important;
  inset:auto!important;
  width:92%!important;
  height:92%!important;
  max-width:92%!important;
  max-height:92%!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:none!important;
}
#cardGrid > .collection-card[data-category="Boss" i] .card-info,
.card-grid > .collection-card[data-category="Boss" i] .card-info{
  position:relative!important;
  inset:auto!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  transform:none!important;
}
#cardGrid > .collection-card[data-category="Boss" i] .card-info>small,
.card-grid > .collection-card[data-category="Boss" i] .card-info>small{
  display:none!important;
}

/* 2) ZOOM COLLECTION : plus de place, mais uniquement pour un Boss. */
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]){
  width:min(900px,94vw)!important;
  max-width:94vw!important;
  max-height:94vh!important;
  overflow:visible!important;
}
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-card-host{
  width:min(820px,90vw)!important;
  height:min(68vh,620px)!important;
  min-height:430px!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  margin:0 auto!important;
}
.collection-card-viewer .collection-viewer-card-host > .collection-card[data-category="Boss" i]{
  width:min(610px,78vh)!important;
  max-width:min(610px,78vh)!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
  transform:none!important;
}
.collection-card-viewer .collection-viewer-card-host > .collection-card[data-category="Boss" i] .card-art-wrap{
  position:relative!important;
  width:100%!important;
  height:min(54vh,470px)!important;
  min-height:min(54vh,470px)!important;
  max-height:min(54vh,470px)!important;
  flex:0 0 min(54vh,470px)!important;
  margin:9px 9px 0!important;
  overflow:visible!important;
  display:grid!important;
  place-items:center!important;
}

/* Le visuel Full Art est le seul élément pivoté. Le nom / les badges restent lisibles. */
.collection-card-viewer .collection-viewer-card-host > .collection-card[data-category="Boss" i] .card-art{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:min(46vh,410px)!important;
  height:min(70vw,700px)!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:contain!important;
  object-position:center center!important;
  transform:translate(-50%,-50%) rotate(90deg)!important;
  transform-origin:center center!important;
  filter:drop-shadow(0 12px 20px rgba(0,0,0,.55))!important;
}
.collection-card-viewer .collection-viewer-card-host > .collection-card[data-category="Boss" i]:hover .card-art{
  transform:translate(-50%,-50%) rotate(90deg)!important;
}
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-actions{
  width:min(610px,78vh)!important;
  max-width:min(610px,78vh)!important;
  margin:0 auto!important;
}

@media(max-width:760px){
  #cardGrid > .collection-card[data-category="Boss" i] .card-art-wrap,
  .card-grid > .collection-card[data-category="Boss" i] .card-art-wrap{
    height:154px!important;
    min-height:154px!important;
    max-height:154px!important;
    flex-basis:154px!important;
  }
  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]){
    width:96vw!important;
    max-width:96vw!important;
  }
  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-card-host{
    width:92vw!important;
    height:min(58vh,500px)!important;
    min-height:330px!important;
  }
  .collection-card-viewer .collection-viewer-card-host > .collection-card[data-category="Boss" i]{
    width:min(82vw,500px)!important;
    max-width:min(82vw,500px)!important;
  }
  .collection-card-viewer .collection-viewer-card-host > .collection-card[data-category="Boss" i] .card-art-wrap{
    height:min(44vh,390px)!important;
    min-height:min(44vh,390px)!important;
    max-height:min(44vh,390px)!important;
    flex-basis:min(44vh,390px)!important;
  }
  .collection-card-viewer .collection-viewer-card-host > .collection-card[data-category="Boss" i] .card-art{
    width:min(38vh,330px)!important;
    height:min(84vw,620px)!important;
  }
  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-actions{
    width:min(82vw,500px)!important;
    max-width:min(82vw,500px)!important;
  }
}

/* === Gracebound · Boss Full Art FINAL — état actuel, sans rollback ===
   - Collection : même encombrement qu'une carte normale, rendu full-art.
   - Zoom : la CARTE ENTIÈRE pivote à 90° et reste entièrement dans le viewport. */

/* COLLECTION — vrai full art, sans modifier la taille des autres cartes */
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i]{
  position:relative!important;
  width:auto!important;
  max-width:none!important;
  min-width:0!important;
  height:343px!important;
  min-height:343px!important;
  max-height:343px!important;
  aspect-ratio:auto!important;
  overflow:hidden!important;
  isolation:isolate!important;
}

#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art-wrap{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:none!important;
  margin:0!important;
  border:0!important;
  border-radius:inherit!important;
  overflow:hidden!important;
  display:block!important;
  background:#080b0a!important;
}

#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
}

#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i]:hover .card-art{
  transform:scale(1.025)!important;
}

/* Dégradé de lecture intégré au full art */
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art-wrap::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(0,0,0,.03) 0%,rgba(0,0,0,.04) 48%,rgba(3,6,5,.58) 68%,rgba(3,6,5,.94) 100%)!important;
}

#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-sheen{
  z-index:2!important;
}
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .rarity-badge,
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .quantity-badge,
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .market-reserved-badge,
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .forge-protected-badge{
  z-index:5!important;
}

#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-info{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:4!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  padding:18px 15px 13px!important;
  display:grid!important;
  grid-template-rows:auto auto!important;
  gap:8px!important;
  overflow:visible!important;
  background:linear-gradient(180deg,transparent 0%,rgba(3,6,5,.18) 15%,rgba(3,6,5,.88) 70%,rgba(3,6,5,.98) 100%)!important;
  transform:none!important;
}

#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-info h3{
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  display:block!important;
  overflow:visible!important;
  text-align:left!important;
  font-family:Georgia,serif!important;
  font-size:17px!important;
  line-height:1.12!important;
  color:#f4f0e7!important;
  text-shadow:0 2px 9px rgba(0,0,0,.95)!important;
}

#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-passive-slots{
  width:100%!important;
  height:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-passive-slots .card-affinity-tags{
  width:100%!important;
}
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-passive-slots .card-affinity-tags>span{
  height:32px!important;
  min-height:32px!important;
  background:rgba(4,7,6,.78)!important;
  backdrop-filter:blur(4px)!important;
}

/* ZOOM — le clone devient la même vraie carte full art, puis la carte entière tourne */
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]){
  width:min(1180px,96vw)!important;
  max-width:96vw!important;
  height:auto!important;
  max-height:96vh!important;
  padding:12px!important;
  gap:10px!important;
  overflow:visible!important;
  align-items:center!important;
}

.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-card-host{
  width:min(1120px,92vw)!important;
  height:min(72vh,760px)!important;
  min-height:430px!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  margin:0 auto!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i]{
  position:relative!important;
  width:min(68vh,54vw)!important;
  max-width:none!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:205 / 343!important;
  overflow:hidden!important;
  isolation:isolate!important;
  transform:rotate(90deg)!important;
  transform-origin:center center!important;
  margin:0!important;
  cursor:default!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i]:hover{
  transform:rotate(90deg)!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-art-wrap{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:none!important;
  margin:0!important;
  border:0!important;
  border-radius:inherit!important;
  overflow:hidden!important;
  display:block!important;
  background:#080b0a!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-art{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i]:hover .card-art{
  transform:none!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-art-wrap::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(180deg,rgba(0,0,0,.02) 0%,rgba(0,0,0,.04) 52%,rgba(3,6,5,.58) 72%,rgba(3,6,5,.95) 100%)!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-sheen{
  z-index:2!important;
}
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .rarity-badge,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .quantity-badge,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .market-reserved-badge,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .forge-protected-badge{
  z-index:5!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-info{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:4!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  padding:24px 20px 18px!important;
  display:grid!important;
  grid-template-rows:auto auto!important;
  gap:10px!important;
  overflow:visible!important;
  background:linear-gradient(180deg,transparent 0%,rgba(3,6,5,.16) 16%,rgba(3,6,5,.9) 68%,rgba(3,6,5,.98) 100%)!important;
  transform:none!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-info h3{
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  display:block!important;
  overflow:visible!important;
  text-align:left!important;
  font-family:Georgia,serif!important;
  font-size:clamp(20px,2vw,29px)!important;
  line-height:1.1!important;
  color:#f4f0e7!important;
  text-shadow:0 3px 12px rgba(0,0,0,.95)!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-passive-slots{
  width:100%!important;
  height:44px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-passive-slots .card-affinity-tags>span{
  height:38px!important;
  min-height:38px!important;
  font-size:10px!important;
  background:rgba(4,7,6,.8)!important;
  backdrop-filter:blur(5px)!important;
}

.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-actions{
  width:min(820px,88vw)!important;
  max-width:88vw!important;
  margin:0 auto!important;
}

@media(max-width:760px){
  #cardGrid > .collection-card.grace-card-frame[data-category="Boss" i]{
    height:257px!important;
    min-height:257px!important;
    max-height:257px!important;
  }
  #cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-info{
    padding:14px 10px 9px!important;
    gap:5px!important;
  }
  #cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-info h3{
    font-size:12px!important;
  }
  #cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-passive-slots{
    height:31px!important;
    min-height:31px!important;
  }
  #cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-passive-slots .card-affinity-tags>span{
    height:27px!important;
    min-height:27px!important;
    font-size:6px!important;
  }

  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]){
    width:98vw!important;
    max-width:98vw!important;
    padding:8px!important;
  }
  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-card-host{
    width:96vw!important;
    height:min(68vh,620px)!important;
    min-height:330px!important;
  }
  .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i]{
    width:min(58vh,56vw)!important;
  }
  .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-info{
    padding:18px 14px 12px!important;
    gap:7px!important;
  }
  .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-info h3{
    font-size:17px!important;
  }
  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-actions{
    width:92vw!important;
    max-width:92vw!important;
  }
}

/* === Gracebound · Ajustement Full Art — sans changer les tailles ===
   Collection : plein cadre sans crop du visuel/BOSS.
   Zoom : même taille qu'actuellement, rotation dans l'autre sens. */

/* Collection : le Full Art utilise 100 % de la carte et ne zoome plus au hover. */
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art,
.card-grid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:fill!important;
  object-position:center center!important;
  transform:none!important;
}
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i]:hover .card-art,
.card-grid > .collection-card.grace-card-frame[data-category="Boss" i]:hover .card-art{
  transform:none!important;
}

/* Zoom : on garde exactement le gabarit actuel, mais on tourne dans l'autre sens. */
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i]{
  transform:rotate(-90deg)!important;
}
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i]:hover{
  transform:rotate(-90deg)!important;
}

/* Le Full Art remplit réellement toute la carte zoomée, sans crop des bords/BOSS. */
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-art{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:fill!important;
  object-position:center center!important;
  transform:none!important;
}
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i]:hover .card-art{
  transform:none!important;
}

/* === Gracebound · Full Art — finition sur l'état actuel ===
   1) L'image du Boss remplit réellement toute la carte.
   2) Le bouton Recycler est ancré en bas à droite dans le zoom. */

/* On retire visuellement la bande intégrée en haut de l'art et on laisse l'image couvrir tout le cadre. */
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art,
.card-grid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-art{
  position:absolute!important;
  left:0!important;
  right:0!important;
  top:-28px!important;
  bottom:auto!important;
  width:100%!important;
  height:calc(100% + 28px)!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
}

/* Le libellé BOSS reste propre et indépendant de l'image recadrée. */
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i]::before,
.card-grid > .collection-card.grace-card-frame[data-category="Boss" i]::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i]::before{
  content:"BOSS"!important;
  position:absolute!important;
  top:5px!important;
  left:8px!important;
  z-index:8!important;
  color:#e9e8df!important;
  font-size:11px!important;
  line-height:1!important;
  font-style:italic!important;
  letter-spacing:.2px!important;
  text-shadow:0 2px 5px rgba(0,0,0,.9)!important;
  pointer-events:none!important;
}

#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .rarity-badge,
.card-grid > .collection-card.grace-card-frame[data-category="Boss" i] .rarity-badge,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .rarity-badge{
  top:20px!important;
  left:9px!important;
}

/* Zoom Boss : bouton Recycler dans l'angle inférieur droit de la carte. */
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]){
  position:relative!important;
}
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-actions{
  position:absolute!important;
  right:24px!important;
  bottom:24px!important;
  left:auto!important;
  top:auto!important;
  z-index:30!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:flex-end!important;
  pointer-events:none!important;
}
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-actions > span{
  display:none!important;
}
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-actions .collection-single-recycle{
  pointer-events:auto!important;
  margin:0!important;
}

@media(max-width:760px){
  #cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art,
  .card-grid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art,
  .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-art{
    top:-20px!important;
    height:calc(100% + 20px)!important;
  }
  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-actions{
    right:16px!important;
    bottom:16px!important;
  }
}

/* === Gracebound · Full Art — correction minimale finale ===
   Uniquement : image bord-à-bord + bouton Recycler normal en bas à droite. */

/* FULL ART : l'art couvre réellement les quatre bords de la carte. */
#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i],
.card-grid > .collection-card.grace-card-frame[data-category="Boss" i],
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i]{
  padding:0!important;
}

#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art-wrap,
.card-grid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art-wrap,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-art-wrap{
  position:absolute!important;
  top:-1px!important;
  right:-1px!important;
  bottom:-1px!important;
  left:-1px!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:inherit!important;
  overflow:hidden!important;
  background:transparent!important;
}

#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art,
.card-grid > .collection-card.grace-card-frame[data-category="Boss" i] .card-art,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i] .card-art{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
}

#cardGrid > .collection-card.grace-card-frame[data-category="Boss" i]:hover .card-art,
.card-grid > .collection-card.grace-card-frame[data-category="Boss" i]:hover .card-art,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame[data-category="Boss" i]:hover .card-art{
  transform:none!important;
}

/* ZOOM : on rend au bouton Recycler son gabarit normal ; seul son emplacement change. */
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-actions{
  position:static!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  pointer-events:none!important;
}

.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-viewer-actions > span{
  display:none!important;
}

.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-single-recycle{
  position:absolute!important;
  right:24px!important;
  bottom:24px!important;
  left:auto!important;
  top:auto!important;
  width:auto!important;
  min-width:max-content!important;
  max-width:none!important;
  margin:0!important;
  white-space:nowrap!important;
  pointer-events:auto!important;
}

@media(max-width:760px){
  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card[data-category="Boss" i]) .collection-single-recycle{
    right:16px!important;
    bottom:16px!important;
  }
}


/* === Gracebound · Boss Full Art — finition propre depuis le template dédié ===
   Garde le gabarit/zoom/bouton actuels ; supprime uniquement la bande parasite
   et remplace le faux libellé BOSS par une vraie pastille séparée. */

/* Le faux BOSS ajouté par les anciens patches ne doit plus exister. */
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart::before,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart::before{
  content:none!important;
  display:none!important;
}

/* Le frame Full Art occupe strictement toute la carte : aucune bande résiduelle. */
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame{
  position:absolute!important;
  inset:-1px!important;
  z-index:0!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:inherit!important;
  overflow:hidden!important;
  background:transparent!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  content:none!important;
  display:none!important;
}

/* Image bord-à-bord. */
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-image,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-image,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:none!important;
  transform:none!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-image,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-image,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-image{
  transform:none!important;
}

/* Deux pastilles indépendantes : rareté à gauche, BOSS juste à côté. */
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .rarity-badge,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .rarity-badge,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .rarity-badge{
  position:absolute!important;
  top:10px!important;
  left:10px!important;
  z-index:12!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge{
  position:absolute!important;
  top:10px!important;
  left:50px!important;
  z-index:12!important;
  height:25px!important;
  min-height:25px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  box-sizing:border-box!important;
  padding:0 8px!important;
  margin:0!important;
  border:1px solid rgba(212,186,109,.60)!important;
  border-radius:7px!important;
  background:rgba(8,9,7,.82)!important;
  color:#efd691!important;
  font-size:8px!important;
  line-height:1!important;
  font-style:normal!important;
  font-weight:900!important;
  letter-spacing:.10em!important;
  text-shadow:none!important;
  white-space:nowrap!important;
  pointer-events:none!important;
}

/* L'ancien contenu standard n'existe plus sur les Boss ; sécurité supplémentaire. */
.collection-card.grace-card-frame.is-boss-fullart > .card-info,
.collection-card.grace-card-frame.is-boss-fullart > .card-art-wrap{
  display:none!important;
}

/* === Gracebound · Effet holographique sur les cartes Full Art ===
   S'applique aux Boss Full Art en collection et dans le zoom. */
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart{
  isolation:isolate!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame{
  isolation:isolate!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-image,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-image,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-image{
  z-index:0!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:
    linear-gradient(115deg,
      rgba(255, 0, 140, .18) 0%,
      rgba(255,255,255,.05) 12%,
      rgba(0, 220, 255, .18) 28%,
      rgba(110, 255, 185, .15) 42%,
      rgba(255, 232, 120, .16) 58%,
      rgba(170, 120, 255, .18) 76%,
      rgba(255, 0, 140, .18) 100%),
    radial-gradient(circle at 18% 22%, rgba(255,255,255,.18), transparent 28%),
    radial-gradient(circle at 82% 78%, rgba(120,220,255,.14), transparent 24%);
  background-size:200% 200%, auto, auto!important;
  mix-blend-mode:screen!important;
  opacity:.28!important;
  animation:graceboundBossHoloShift 8.5s linear infinite!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-35%!important;
  z-index:2!important;
  pointer-events:none!important;
  background:linear-gradient(104deg,
      transparent 38%,
      rgba(255,255,255,.03) 43%,
      rgba(255,255,255,.34) 49%,
      rgba(255,255,255,.07) 54%,
      transparent 60%);
  mix-blend-mode:screen!important;
  opacity:.42!important;
  transform:translateX(-28%) rotate(0deg)!important;
  animation:graceboundBossHoloSweep 4.2s ease-in-out infinite!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::before,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::before{
  opacity:.38!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::after,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::after,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::after{
  opacity:.58!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .rarity-badge,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .rarity-badge,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .rarity-badge,
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge,
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .quantity-badge,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .quantity-badge,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .quantity-badge,
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .market-reserved-badge,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .market-reserved-badge,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .market-reserved-badge,
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .forge-protected-badge,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .forge-protected-badge,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .forge-protected-badge{
  z-index:4!important;
}
@keyframes graceboundBossHoloShift{
  0%{background-position:0% 50%,0 0,0 0}
  50%{background-position:100% 50%,0 0,0 0}
  100%{background-position:0% 50%,0 0,0 0}
}
@keyframes graceboundBossHoloSweep{
  0%,100%{transform:translateX(-26%) rotate(0deg)!important;opacity:.10!important}
  50%{transform:translateX(26%) rotate(0deg)!important;opacity:.55!important}
}
@media (prefers-reduced-motion: reduce){
  #cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
  .card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
  .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
  #cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
  .card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
  .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
    animation:none!important;
  }
}

/* === Gracebound · Full Art holographique V2 + bouton zoom au coin ===
   Ajustement uniquement des Boss Full Art déjà en place. */

/* Holographique nettement visible : voile prismatique + balayage lumineux. */
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:
    linear-gradient(125deg,
      rgba(255,45,165,.55) 0%,
      rgba(255,255,255,.06) 14%,
      rgba(55,220,255,.52) 29%,
      rgba(70,255,185,.38) 43%,
      rgba(255,225,70,.42) 58%,
      rgba(135,95,255,.52) 76%,
      rgba(255,45,165,.55) 100%),
    radial-gradient(circle at 20% 18%,rgba(255,255,255,.46),transparent 20%),
    radial-gradient(circle at 78% 72%,rgba(115,235,255,.34),transparent 24%)!important;
  background-size:260% 260%,100% 100%,100% 100%!important;
  background-position:0% 50%,center,center!important;
  mix-blend-mode:screen!important;
  opacity:.46!important;
  filter:saturate(1.28) contrast(1.04)!important;
  animation:graceboundBossHoloShiftV2 5.8s ease-in-out infinite!important;
}

#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:
    linear-gradient(108deg,
      transparent 0%,
      transparent 29%,
      rgba(255,255,255,.08) 38%,
      rgba(255,255,255,.68) 48%,
      rgba(170,240,255,.22) 53%,
      transparent 64%,
      transparent 100%),
    repeating-linear-gradient(135deg,
      rgba(255,255,255,0) 0 16px,
      rgba(255,255,255,.055) 17px 18px,
      rgba(255,255,255,0) 19px 34px)!important;
  background-size:240% 100%,100% 100%!important;
  background-position:-140% 0,0 0!important;
  mix-blend-mode:screen!important;
  opacity:.48!important;
  animation:graceboundBossHoloSweepV2 3.4s ease-in-out infinite!important;
}

/* En zoom, un peu plus présent pour que l'effet reste perceptible sur la grande image. */
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before{
  opacity:.52!important;
}
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  opacity:.55!important;
}

/* Les pastilles restent toujours au-dessus du foil. */
.collection-card.grace-card-frame.is-boss-fullart .rarity-badge,
.collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge,
.collection-card.grace-card-frame.is-boss-fullart .quantity-badge,
.collection-card.grace-card-frame.is-boss-fullart .market-reserved-badge,
.collection-card.grace-card-frame.is-boss-fullart .forge-protected-badge{
  z-index:20!important;
}

/* Bouton Recycler : même bouton, simplement collé au coin inférieur droit du zoom visible. */
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card.is-boss-fullart) .collection-single-recycle{
  position:fixed!important;
  right:clamp(18px,3.2vw,64px)!important;
  bottom:clamp(18px,4vh,50px)!important;
  left:auto!important;
  top:auto!important;
  z-index:500!important;
  width:auto!important;
  min-width:max-content!important;
  max-width:none!important;
  margin:0!important;
  white-space:nowrap!important;
  pointer-events:auto!important;
}

@keyframes graceboundBossHoloShiftV2{
  0%{background-position:0% 50%,center,center}
  50%{background-position:100% 50%,center,center}
  100%{background-position:0% 50%,center,center}
}
@keyframes graceboundBossHoloSweepV2{
  0%,12%{background-position:-140% 0,0 0}
  58%{background-position:45% 0,0 0}
  100%{background-position:135% 0,0 0}
}

@media(max-width:760px){
  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card.is-boss-fullart) .collection-single-recycle{
    right:16px!important;
    bottom:16px!important;
  }
}

/* === Gracebound · Full Art holographique V3 — plus subtil, sans barre === */
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before{
  background:
    linear-gradient(125deg,
      rgba(255,70,170,.28) 0%,
      rgba(255,255,255,.025) 16%,
      rgba(70,210,255,.24) 31%,
      rgba(90,245,190,.18) 45%,
      rgba(255,225,95,.20) 60%,
      rgba(145,110,255,.24) 78%,
      rgba(255,70,170,.28) 100%),
    radial-gradient(circle at 18% 22%,rgba(255,255,255,.18),transparent 22%),
    radial-gradient(circle at 78% 72%,rgba(120,225,255,.14),transparent 26%)!important;
  background-size:240% 240%,100% 100%,100% 100%!important;
  opacity:.22!important;
  filter:saturate(1.08)!important;
  animation:graceboundBossHoloShiftV2 8.5s ease-in-out infinite!important;
}

/* Remplace le gros balayage rectangulaire par un reflet diffus sans bord visible. */
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  inset:-18%!important;
  border-radius:35%!important;
  background:
    radial-gradient(ellipse at 30% 45%,rgba(255,255,255,.24) 0%,rgba(170,230,255,.11) 18%,transparent 43%),
    radial-gradient(ellipse at 72% 58%,rgba(255,140,220,.10) 0%,transparent 36%)!important;
  background-size:130% 130%,120% 120%!important;
  background-position:-35% 30%,120% 65%!important;
  mix-blend-mode:screen!important;
  opacity:.16!important;
  filter:blur(10px)!important;
  animation:graceboundBossHoloSoftGlint 6.8s ease-in-out infinite!important;
}

/* Le zoom reste légèrement plus lisible que la miniature, mais sans blanchir l'image. */
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before{
  opacity:.26!important;
}
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  opacity:.19!important;
}

@keyframes graceboundBossHoloSoftGlint{
  0%,100%{background-position:-35% 30%,120% 65%;transform:scale(1)}
  50%{background-position:80% 58%,-10% 35%;transform:scale(1.03)}
}

/* === Gracebound · Full Art holographique V4 — plus visible sans barre === */
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before{
  background:
    linear-gradient(122deg,
      rgba(255,70,170,.40) 0%,
      rgba(255,255,255,.035) 14%,
      rgba(70,215,255,.34) 30%,
      rgba(95,245,195,.26) 44%,
      rgba(255,225,95,.28) 59%,
      rgba(150,110,255,.34) 77%,
      rgba(255,70,170,.40) 100%),
    radial-gradient(circle at 18% 22%,rgba(255,255,255,.18),transparent 20%),
    radial-gradient(circle at 78% 70%,rgba(120,230,255,.16),transparent 24%)!important;
  background-size:230% 230%,100% 100%,100% 100%!important;
  background-position:0% 50%,center,center!important;
  mix-blend-mode:screen!important;
  opacity:.31!important;
  filter:saturate(1.16) contrast(1.03)!important;
  animation:graceboundBossHoloShiftV4 6.4s ease-in-out infinite!important;
}

#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  inset:-12%!important;
  border-radius:28%!important;
  background:
    repeating-linear-gradient(135deg,
      rgba(255,255,255,0) 0 14px,
      rgba(255,255,255,.028) 15px 16px,
      rgba(255,255,255,0) 17px 30px),
    radial-gradient(ellipse at 26% 44%,rgba(255,255,255,.20) 0%,rgba(170,230,255,.10) 16%,transparent 38%),
    radial-gradient(ellipse at 74% 60%,rgba(255,140,220,.10) 0%,transparent 34%)!important;
  background-size:100% 100%,128% 128%,120% 120%!important;
  background-position:0 0,-30% 34%,112% 66%!important;
  mix-blend-mode:screen!important;
  opacity:.24!important;
  filter:blur(6px)!important;
  animation:graceboundBossHoloSoftGlintV4 5.6s ease-in-out infinite!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before{
  opacity:.37!important;
}
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  opacity:.30!important;
}

@keyframes graceboundBossHoloShiftV4{
  0%{background-position:0% 50%,center,center}
  50%{background-position:100% 50%,center,center}
  100%{background-position:0% 50%,center,center}
}
@keyframes graceboundBossHoloSoftGlintV4{
  0%,100%{background-position:0 0,-30% 34%,112% 66%;transform:scale(1)}
  50%{background-position:0 0,72% 56%,-8% 36%;transform:scale(1.02)}
}

@media (prefers-reduced-motion: reduce){
  #cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
  .card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
  .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
  #cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
  .card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
  .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
    animation:none!important;
  }
}

/* === Gracebound · Full Art holographique V5 — effet brillant plus assumé === */
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before{
  background:
    linear-gradient(122deg,
      rgba(255,70,170,.50) 0%,
      rgba(255,255,255,.05) 13%,
      rgba(70,215,255,.42) 29%,
      rgba(95,245,195,.32) 43%,
      rgba(255,225,95,.36) 58%,
      rgba(150,110,255,.42) 77%,
      rgba(255,70,170,.50) 100%),
    radial-gradient(circle at 18% 22%,rgba(255,255,255,.22),transparent 20%),
    radial-gradient(circle at 78% 70%,rgba(120,230,255,.18),transparent 24%)!important;
  background-size:220% 220%,100% 100%,100% 100%!important;
  background-position:0% 50%,center,center!important;
  mix-blend-mode:screen!important;
  opacity:.40!important;
  filter:saturate(1.24) contrast(1.05) brightness(1.03)!important;
  animation:graceboundBossHoloShiftV5 5.2s ease-in-out infinite!important;
}

#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  inset:-10%!important;
  border-radius:24%!important;
  background:
    repeating-linear-gradient(135deg,
      rgba(255,255,255,0) 0 12px,
      rgba(255,255,255,.04) 13px 14px,
      rgba(255,255,255,0) 15px 26px),
    radial-gradient(ellipse at 26% 44%,rgba(255,255,255,.28) 0%,rgba(170,230,255,.13) 15%,transparent 36%),
    radial-gradient(ellipse at 74% 60%,rgba(255,140,220,.12) 0%,transparent 32%)!important;
  background-size:100% 100%,126% 126%,118% 118%!important;
  background-position:0 0,-24% 34%,110% 66%!important;
  mix-blend-mode:screen!important;
  opacity:.34!important;
  filter:blur(4px)!important;
  animation:graceboundBossHoloSoftGlintV5 4.8s ease-in-out infinite!important;
}

.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before{
  opacity:.47!important;
}
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  opacity:.40!important;
}

#cardGrid > .collection-card.grace-card-frame.is-boss-fullart,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart{
  box-shadow:
    0 0 0 1px rgba(110,220,255,.18) inset,
    0 0 26px rgba(110,220,255,.10),
    0 0 18px rgba(255,110,220,.08)!important;
}

@keyframes graceboundBossHoloShiftV5{
  0%{background-position:0% 50%,center,center}
  50%{background-position:100% 50%,center,center}
  100%{background-position:0% 50%,center,center}
}
@keyframes graceboundBossHoloSoftGlintV5{
  0%,100%{background-position:0 0,-24% 34%,110% 66%;transform:scale(1)}
  50%{background-position:0 0,78% 58%,-4% 36%;transform:scale(1.025)}
}

@media (prefers-reduced-motion: reduce){
  #cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
  .card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
  .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
  #cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
  .card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
  .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
    animation:none!important;
  }
}

/* === Gracebound · V5.1 — Recycler ancré à la carte zoomée ===
   Garde la V5 intacte ; corrige uniquement l'ancrage du bouton. */
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card.is-boss-fullart){
  position:relative!important;
}
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card.is-boss-fullart) .collection-single-recycle{
  position:absolute!important;
  right:6px!important;
  bottom:6px!important;
  left:auto!important;
  top:auto!important;
  z-index:500!important;
  width:auto!important;
  min-width:max-content!important;
  max-width:none!important;
  margin:0!important;
  white-space:nowrap!important;
}
@media(max-width:760px){
  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card.is-boss-fullart) .collection-single-recycle{
    right:6px!important;
    bottom:6px!important;
  }
}

/* === Gracebound · Ajustement final Full Art ===
   - Pastilles Rareté / BOSS sans effet holographique
   - Bouton Recycler encore plus bas à droite */
.collection-card.grace-card-frame.is-boss-fullart .rarity-badge,
.collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge{
  isolation:isolate!important;
  mix-blend-mode:normal!important;
  filter:none!important;
  opacity:1!important;
  backdrop-filter:none!important;
  box-shadow:0 1px 4px rgba(0,0,0,.28)!important;
}
.collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge{
  background:rgba(8,9,7,.98)!important;
  color:#efd691!important;
  border-color:rgba(212,186,109,.72)!important;
}
.collection-card.grace-card-frame.is-boss-fullart.rarity-pc .rarity-badge{background:#8197a7!important;color:#0e110d!important}
.collection-card.grace-card-frame.is-boss-fullart.rarity-r .rarity-badge{background:#9a86b4!important;color:#0e110d!important}
.collection-card.grace-card-frame.is-boss-fullart.rarity-sr .rarity-badge{background:#bd7c94!important;color:#0e110d!important}
.collection-card.grace-card-frame.is-boss-fullart.rarity-ur .rarity-badge{background:#ce814a!important;color:#0e110d!important}
.collection-card.grace-card-frame.is-boss-fullart.rarity-l .rarity-badge{background:#e4c25d!important;color:#0e110d!important}

.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card.is-boss-fullart) .collection-single-recycle{
  right:2px!important;
  bottom:2px!important;
}
@media(max-width:760px){
  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card.is-boss-fullart) .collection-single-recycle{
    right:2px!important;
    bottom:2px!important;
  }
}

/* === Gracebound · Ajustement final Recycler = vrai coin inférieur droit de la carte === */
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card.is-boss-fullart) .collection-viewer-actions{
  position:absolute!important;
  right:4px!important;
  bottom:4px!important;
  left:auto!important;
  top:auto!important;
  z-index:520!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  justify-content:flex-end!important;
  align-items:flex-end!important;
  pointer-events:none!important;
}
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card.is-boss-fullart) .collection-viewer-actions > span{
  display:none!important;
}
.collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card.is-boss-fullart) .collection-viewer-actions .collection-single-recycle{
  position:static!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  top:auto!important;
  z-index:auto!important;
  margin:0!important;
  pointer-events:auto!important;
}
@media(max-width:760px){
  .collection-card-viewer-content.collection-full-card-viewer:has(.collection-viewer-card-host > .collection-card.is-boss-fullart) .collection-viewer-actions{
    right:4px!important;
    bottom:4px!important;
  }
}


/* === Gracebound 0.2.55 · Full Art unifié + passifs visibles + recycler bien placé === */
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart{
  display:block!important;
  overflow:hidden!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-frame{
  position:relative!important;
  isolation:isolate!important;
  width:100%!important;
  height:100%!important;
  min-height:inherit!important;
  overflow:hidden!important;
  border-radius:inherit!important;
  display:block!important;
  background:#090909!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-image,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-image,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-image,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-image,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-image{
  width:100%!important;
  height:100%!important;
  display:block!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:none!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-shade,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-shade,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-shade,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-shade,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-shade{
  position:absolute!important;
  inset:auto 0 0 0!important;
  height:44%!important;
  z-index:2!important;
  background:linear-gradient(180deg,rgba(5,5,5,0) 0%,rgba(5,5,5,.18) 24%,rgba(5,5,5,.82) 72%,rgba(5,5,5,.96) 100%)!important;
  pointer-events:none!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-copy{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:3!important;
  padding:14px 14px 12px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  color:#f3ecdd!important;
  pointer-events:none!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy h3,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy h3,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy h3,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy h3,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-copy h3{
  margin:0!important;
  color:#f3ecdd!important;
  font-family:Georgia,serif!important;
  font-size:clamp(14px,1.2vw,19px)!important;
  line-height:1.14!important;
  text-shadow:0 2px 10px rgba(0,0,0,.65)!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy small,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy small,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy small,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy small,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-copy small{
  display:block!important;
  margin:0!important;
  color:#cfc7b5!important;
  font-size:10px!important;
  letter-spacing:.8px!important;
  line-height:1.2!important;
  text-shadow:0 2px 8px rgba(0,0,0,.65)!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-section,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-section,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-section,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-section,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-section{
  margin-top:2px!important;
  padding-top:0!important;
  border-top:0!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-tags,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-tags,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-tags,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-tags,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-tags{
  justify-content:flex-start!important;
  gap:4px!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-tags > span,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-tags > span,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-tags > span,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-tags > span,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-tags > span{
  min-height:18px!important;
  padding:3px 6px!important;
  font-size:7px!important;
  line-height:1.1!important;
}
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart > .card-info,
#cardGrid > .collection-card.grace-card-frame.is-boss-fullart > .card-art-wrap,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart > .card-info,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart > .card-art-wrap,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart > .card-info,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart > .card-art-wrap,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart > .card-info,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart > .card-art-wrap{
  display:none!important;
}
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .front{
  padding:0!important;
  overflow:hidden!important;
}
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .front > .rarity-badge,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .front > .new-tag,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .front > .favorite-target-tag,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .front > .reveal-art,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .front > .reveal-info{
  display:none!important;
}
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-copy{
  pointer-events:none!important;
  padding:12px 12px 11px!important;
}
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-copy h3{
  font-size:12px!important;
}
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-copy small{
  font-size:8px!important;
}
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-copy .card-affinity-tags > span{
  font-size:6px!important;
  min-height:15px!important;
  padding:2px 5px!important;
}
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart.viewer-full-card{
  position:relative!important;
}
/* === Gracebound 0.2.56 · Zoom Full Art : vrai footer visuel sous la carte tournée === */
.collection-card-viewer .collection-viewer-card-host > .collection-card.is-boss-fullart.viewer-full-card .boss-zoom-source-hidden{
  display:none!important;
}
.collection-card-viewer .boss-fullart-visual-shade{
  position:fixed!important;
  z-index:585!important;
  height:148px!important;
  border-radius:0 0 14px 14px!important;
  background:linear-gradient(180deg,rgba(5,5,5,0) 0%,rgba(5,5,5,.22) 22%,rgba(5,5,5,.84) 68%,rgba(5,5,5,.96) 100%)!important;
  pointer-events:none!important;
}
.collection-card-viewer .boss-fullart-visual-copy{
  position:fixed!important;
  z-index:590!important;
  top:auto!important;
  right:auto!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0 0 8px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-end!important;
  gap:5px!important;
  transform:none!important;
  color:#f3ecdd!important;
  pointer-events:none!important;
}
.collection-card-viewer .boss-fullart-visual-copy h3{
  margin:0!important;
  color:#f3ecdd!important;
  font-family:Georgia,serif!important;
  font-size:19px!important;
  line-height:1.12!important;
  text-shadow:0 2px 10px rgba(0,0,0,.78)!important;
}
.collection-card-viewer .boss-fullart-visual-copy small{
  display:block!important;
  margin:0!important;
  color:#cfc7b5!important;
  font-size:9px!important;
  letter-spacing:.8px!important;
  line-height:1.2!important;
  text-shadow:0 2px 8px rgba(0,0,0,.75)!important;
}
.collection-card-viewer .boss-fullart-visual-copy .card-affinity-section{
  width:100%!important;
  margin:2px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.collection-card-viewer .boss-fullart-visual-copy .card-affinity-tags{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-start!important;
  gap:5px!important;
}
.collection-card-viewer .boss-fullart-visual-copy .card-affinity-tags > span{
  min-height:20px!important;
  padding:4px 7px!important;
  font-size:8px!important;
  line-height:1.05!important;
}
.collection-card-viewer .collection-viewer-actions.boss-fullart-visual-actions{
  position:fixed!important;
  z-index:600!important;
  left:auto!important;
  top:auto!important;
  width:auto!important;
  max-width:none!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-end!important;
  transform:none!important;
  pointer-events:none!important;
}
.collection-card-viewer .collection-viewer-actions.boss-fullart-visual-actions > span{
  display:none!important;
}
.collection-card-viewer .collection-viewer-actions.boss-fullart-visual-actions .collection-single-recycle{
  position:static!important;
  inset:auto!important;
  width:auto!important;
  min-width:max-content!important;
  max-width:none!important;
  margin:0!important;
  transform:none!important;
  white-space:nowrap!important;
  pointer-events:auto!important;
}
@media(max-width:760px){
  .collection-card-viewer .boss-fullart-visual-shade{height:118px!important}
  .collection-card-viewer .boss-fullart-visual-copy h3{font-size:15px!important}
  .collection-card-viewer .boss-fullart-visual-copy .card-affinity-tags > span{font-size:7px!important;padding:3px 6px!important}
  .collection-card-viewer .collection-viewer-actions.boss-fullart-visual-actions .collection-single-recycle{font-size:10px!important;padding:0 12px!important;height:40px!important}
}

/* === Gracebound 0.2.57 · Full Art booster = rendu Collection + zoom visuel propre === */
/* Le recto Full Art du booster n'utilise plus un rendu parallèle : il contient
   une vraie .collection-card dans un .card-grid, donc il hérite des mêmes règles
   Full Art / holographiques que la Collection. */
.opening-overlay .reveal-card.booster-fullart-reveal .front{
  display:block!important;
  padding:0!important;
  overflow:hidden!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid,
.card-image-viewer-card.booster-fullart-grid{
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  display:block!important;
  grid-template-columns:none!important;
  gap:0!important;
  overflow:visible!important;
}
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.booster-fullart-card{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  border-radius:15px!important;
  transform:none!important;
  z-index:1!important;
  cursor:pointer!important;
}
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.booster-fullart-card:hover{
  transform:none!important;
}
/* Le tag NOUVEAU reste spécifique au booster, mais tout le reste est celui de Collection. */
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-card .new-tag{
  z-index:30!important;
}
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-card .favorite-target-tag{
  z-index:30!important;
}
/* L'aperçu grand d'une Full Art obtenue dans un booster réutilise lui aussi le sélecteur
   .card-grid > .collection-card, ce qui lui donne le même holographique que Collection. */
.card-image-viewer-card.booster-fullart-grid > .collection-card.is-boss-fullart{
  position:relative!important;
  width:min(360px,100%)!important;
  height:auto!important;
  min-height:470px!important;
  margin:0 auto!important;
  transform:none!important;
}

/* Dans le zoom Collection, la carte source est tournée : on masque ses éléments de HUD
   puis on les redessine dans le repère visuel de l'écran. Le voile noir n'est plus recréé. */
.collection-card-viewer .boss-fullart-visual-shade{
  display:none!important;
}
.collection-card-viewer .boss-fullart-visual-badges{
  position:fixed!important;
  z-index:605!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  pointer-events:none!important;
}
.collection-card-viewer .boss-fullart-visual-badges .rarity-badge,
.collection-card-viewer .boss-fullart-visual-badges .boss-fullart-badge{
  position:static!important;
  inset:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:25px!important;
  min-height:25px!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0 8px!important;
  border-radius:7px!important;
  line-height:1!important;
  font-size:8px!important;
  font-style:normal!important;
  font-weight:900!important;
  letter-spacing:.10em!important;
  white-space:nowrap!important;
  transform:none!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  backdrop-filter:none!important;
  box-shadow:0 1px 4px rgba(0,0,0,.28)!important;
}
.collection-card-viewer .boss-fullart-visual-badges .boss-fullart-badge{
  border:1px solid rgba(212,186,109,.72)!important;
  background:rgba(8,9,7,.98)!important;
  color:#efd691!important;
}
.collection-card-viewer .boss-fullart-visual-badges .rarity-badge{
  border:0!important;
  color:#0e110d!important;
}
.collection-card-viewer .boss-fullart-visual-badges.rarity-c .rarity-badge{background:#7e8a78!important}
.collection-card-viewer .boss-fullart-visual-badges.rarity-pc .rarity-badge{background:#8197a7!important}
.collection-card-viewer .boss-fullart-visual-badges.rarity-r .rarity-badge{background:#9a86b4!important}
.collection-card-viewer .boss-fullart-visual-badges.rarity-sr .rarity-badge{background:#bd7c94!important}
.collection-card-viewer .boss-fullart-visual-badges.rarity-ur .rarity-badge{background:#ce814a!important}
.collection-card-viewer .boss-fullart-visual-badges.rarity-l .rarity-badge{background:#e4c25d!important}

/* Le footer texte reste au vrai bas visuel, sans bande dégradée noire derrière lui. */
.collection-card-viewer .boss-fullart-visual-copy{
  text-shadow:none!important;
}
.collection-card-viewer .boss-fullart-visual-copy h3,
.collection-card-viewer .boss-fullart-visual-copy small{
  text-shadow:0 1px 4px rgba(0,0,0,.82)!important;
}

/* Le bouton est volontairement quelques pixels au-delà du coin calculé de la carte :
   c'est le petit décalage bas-droite demandé. Son ancrage final est posé en JS avec
   le getBoundingClientRect visuel, donc la rotation de la Full Art est déjà compensée. */
.collection-card-viewer .collection-viewer-actions.boss-fullart-visual-actions{
  transform:none!important;
}


/* === Gracebound 0.2.58 · Zoom Full Art depuis booster = zoom Collection === */
.card-image-viewer.is-booster-fullart-zoom{
  padding:8px!important;
  overflow:hidden!important;
}
.card-image-viewer.is-booster-fullart-zoom .card-image-viewer-content{
  width:min(1180px,96vw)!important;
  max-width:96vw!important;
  height:min(94vh,900px)!important;
  max-height:94vh!important;
  padding:12px!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
}
.card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid{
  width:min(1120px,92vw)!important;
  height:min(72vh,760px)!important;
  min-height:430px!important;
  max-width:none!important;
  max-height:none!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  margin:0 auto!important;
}
.card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid > .collection-card.is-boss-fullart.viewer-full-card{
  position:relative!important;
  width:min(68vh,54vw)!important;
  max-width:none!important;
  min-width:0!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:205 / 343!important;
  margin:0!important;
  overflow:hidden!important;
  isolation:isolate!important;
  transform:rotate(-90deg)!important;
  transform-origin:center center!important;
  cursor:default!important;
}
.card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid > .collection-card.is-boss-fullart.viewer-full-card:hover{
  transform:rotate(-90deg)!important;
}
.card-image-viewer.is-booster-fullart-zoom .collection-card.is-boss-fullart .boss-fullart-frame{
  position:absolute!important;
  inset:-1px!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  border-radius:inherit!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
.card-image-viewer.is-booster-fullart-zoom .collection-card.is-boss-fullart .boss-fullart-image{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  transform:none!important;
  filter:none!important;
  z-index:0!important;
}
/* Force les deux couches holo V5 sur le viewer booster, même si d'anciens overrides
   du viewer XL tentaient de neutraliser les pseudo-éléments. */
.card-image-viewer.is-booster-fullart-zoom .collection-card.is-boss-fullart .boss-fullart-frame::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  border-radius:inherit!important;
  background:
    linear-gradient(120deg,rgba(255,60,165,.30),rgba(255,255,255,.06) 15%,rgba(30,225,255,.30) 32%,rgba(115,255,190,.24) 48%,rgba(255,225,100,.26) 63%,rgba(175,125,255,.28) 82%,rgba(255,60,165,.30)),
    radial-gradient(circle at 20% 22%,rgba(255,255,255,.22),transparent 31%),
    radial-gradient(circle at 78% 72%,rgba(100,220,255,.18),transparent 29%)!important;
  background-size:220% 220%,100% 100%,100% 100%!important;
  mix-blend-mode:screen!important;
  opacity:.47!important;
  filter:saturate(1.24) contrast(1.05) brightness(1.03)!important;
  animation:graceboundBossHoloShiftV5 5.2s ease-in-out infinite!important;
}
.card-image-viewer.is-booster-fullart-zoom .collection-card.is-boss-fullart .boss-fullart-frame::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-10%!important;
  z-index:2!important;
  pointer-events:none!important;
  border-radius:24%!important;
  background:
    repeating-linear-gradient(135deg,rgba(255,255,255,0) 0 12px,rgba(255,255,255,.04) 13px 14px,rgba(255,255,255,0) 15px 26px),
    radial-gradient(ellipse at 26% 44%,rgba(255,255,255,.28) 0%,rgba(170,230,255,.13) 15%,transparent 36%),
    radial-gradient(ellipse at 74% 60%,rgba(255,140,220,.12) 0%,transparent 32%)!important;
  background-size:100% 100%,126% 126%,118% 118%!important;
  background-position:0 0,-24% 34%,110% 66%!important;
  mix-blend-mode:screen!important;
  opacity:.40!important;
  filter:blur(4px)!important;
  animation:graceboundBossHoloSoftGlintV5 4.8s ease-in-out infinite!important;
}
.card-image-viewer.is-booster-fullart-zoom .boss-zoom-source-hidden{
  display:none!important;
}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy{
  position:fixed!important;
  z-index:605!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:4px!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  pointer-events:none!important;
  color:#f4f0e7!important;
}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy h3{
  margin:0!important;
  font-family:Georgia,serif!important;
  font-size:clamp(18px,1.7vw,27px)!important;
  line-height:1.08!important;
  color:#f4f0e7!important;
  text-shadow:0 2px 6px rgba(0,0,0,.88)!important;
}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy small{
  margin:0!important;
  color:#d8d2c5!important;
  font-size:10px!important;
  letter-spacing:.6px!important;
  text-shadow:0 2px 5px rgba(0,0,0,.88)!important;
}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy .card-affinity-section{
  margin:3px 0 0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy .card-affinity-tags{
  justify-content:flex-start!important;
  gap:5px!important;
}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy .card-affinity-tags>span{
  min-height:23px!important;
  padding:4px 8px!important;
  font-size:8px!important;
  background:rgba(4,7,6,.72)!important;
  backdrop-filter:blur(4px)!important;
}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges{
  position:fixed!important;
  z-index:605!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  width:auto!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  pointer-events:none!important;
}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges .rarity-badge,
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges .boss-fullart-badge{
  position:static!important;
  inset:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:25px!important;
  min-height:25px!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0 8px!important;
  border-radius:7px!important;
  line-height:1!important;
  font-size:8px!important;
  font-style:normal!important;
  font-weight:900!important;
  letter-spacing:.10em!important;
  white-space:nowrap!important;
  transform:none!important;
  filter:none!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
  box-shadow:0 1px 4px rgba(0,0,0,.28)!important;
}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges .boss-fullart-badge{
  border:1px solid rgba(212,186,109,.72)!important;
  background:rgba(8,9,7,.98)!important;
  color:#efd691!important;
}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges .rarity-badge{border:0!important;color:#0e110d!important}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges.rarity-c .rarity-badge{background:#7e8a78!important}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges.rarity-pc .rarity-badge{background:#8197a7!important}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges.rarity-r .rarity-badge{background:#9a86b4!important}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges.rarity-sr .rarity-badge{background:#bd7c94!important}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges.rarity-ur .rarity-badge{background:#ce814a!important}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges.rarity-l .rarity-badge{background:#e4c25d!important}
.card-image-viewer.is-booster-fullart-zoom .card-viewer-close{
  position:fixed!important;
  top:14px!important;
  right:14px!important;
  z-index:650!important;
}
@media(max-width:760px){
  .card-image-viewer.is-booster-fullart-zoom .card-image-viewer-content{width:98vw!important;max-width:98vw!important;padding:6px!important}
  .card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid{width:96vw!important;height:min(68vh,620px)!important;min-height:330px!important}
  .card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid > .collection-card.is-boss-fullart.viewer-full-card{width:min(58vh,56vw)!important}
  .card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy h3{font-size:17px!important}
  .card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy .card-affinity-tags>span{font-size:7px!important;min-height:20px!important;padding:3px 6px!important}
}


/* === Gracebound 0.2.59 · Zoom booster Full Art : HUD unique et horizontal === */
/* Sécurité anti-doublon : dans la carte source tournée, aucun texte/badge de HUD
   ne doit rester visible. La seule couche lisible est l'overlay visuel non tourné. */
.card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid > .collection-card.is-boss-fullart.viewer-full-card .boss-fullart-copy,
.card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid > .collection-card.is-boss-fullart.viewer-full-card .boss-fullart-shade,
.card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid > .collection-card.is-boss-fullart.viewer-full-card .rarity-badge,
.card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid > .collection-card.is-boss-fullart.viewer-full-card .boss-fullart-badge{
  display:none!important;
}
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy,
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy h3,
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy small,
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy .card-affinity-section,
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy .card-affinity-tags,
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-copy .card-affinity-tags > span,
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges,
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges .rarity-badge,
.card-image-viewer.is-booster-fullart-zoom .booster-fullart-visual-badges .boss-fullart-badge{
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
  transform:none!important;
}


/* === Gracebound · SFX master volume === */
.pack-sfx-volume{
  margin-top:10px;
  min-height:58px;
  display:grid;
  grid-template-columns:minmax(150px,220px) minmax(160px,1fr) 48px;
  align-items:center;
  gap:14px;
  padding:10px 13px;
  border:1px solid #30342a;
  border-radius:12px;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(0,0,0,.055));
}
.pack-sfx-volume-copy{display:grid;gap:2px;min-width:0}
.pack-sfx-volume-copy strong{font-size:10px;color:#d9d2bd}
.pack-sfx-volume-copy small{font-size:8px;color:#73796f;line-height:1.25}
.pack-sfx-volume output{font-size:10px;font-weight:900;color:#d9c376;text-align:right;font-variant-numeric:tabular-nums}
#soundVolume{
  --sound-volume:80%;
  appearance:none;
  width:100%;
  height:6px;
  border-radius:999px;
  outline:0;
  cursor:pointer;
  background:linear-gradient(90deg,#c7aa5f 0 var(--sound-volume),#282c24 var(--sound-volume) 100%);
}
#soundVolume::-webkit-slider-thumb{
  appearance:none;
  width:17px;height:17px;border-radius:50%;
  border:2px solid #e1ca82;background:#171a15;
  box-shadow:0 2px 10px rgba(0,0,0,.45);
}
#soundVolume::-moz-range-thumb{
  width:15px;height:15px;border-radius:50%;
  border:2px solid #e1ca82;background:#171a15;
  box-shadow:0 2px 10px rgba(0,0,0,.45);
}
@media(max-width:760px){
  .pack-sfx-volume{grid-template-columns:1fr 44px;gap:8px 10px}
  .pack-sfx-volume-copy{grid-column:1/-1}
  #soundVolume{grid-column:1}
}


/* === Gracebound 0.2.61 · Un seul passif centré uniquement dans la collection === */
#cardGrid > .collection-card.grace-card-frame .card-passive-slots.has-one .card-affinity-tags{
  grid-template-columns:minmax(0,78%)!important;
  justify-content:center!important;
  justify-items:center!important;
}
#cardGrid > .collection-card.grace-card-frame .card-passive-slots.has-one .card-affinity-tags > span{
  width:100%!important;
  justify-self:center!important;
}


/* === Gracebound 0.2.63 · Holographic Full Art site-wide (popup style) === */
@keyframes graceboundHoloSweepSite{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}
@keyframes graceboundHoloGlintSite{
  0%,100%{opacity:.38;transform:translateX(-4%)}
  50%{opacity:.72;transform:translateX(4%)}
}

#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.is-boss-fullart .boss-fullart-frame,
.card-image-viewer.is-booster-fullart-zoom .collection-card.is-boss-fullart .boss-fullart-frame{
  isolation:isolate!important;
}

#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.is-boss-fullart .boss-fullart-frame::before,
.card-image-viewer.is-booster-fullart-zoom .collection-card.is-boss-fullart .boss-fullart-frame::before{
  content:""!important;
  position:absolute!important;
  inset:-20%!important;
  z-index:1!important;
  pointer-events:none!important;
  background:
    linear-gradient(
      115deg,
      transparent 18%,
      rgba(255,0,118,.10) 28%,
      rgba(116,73,255,.12) 36%,
      rgba(0,225,255,.17) 44%,
      rgba(70,255,158,.11) 52%,
      rgba(255,235,90,.15) 60%,
      rgba(255,92,54,.10) 68%,
      transparent 80%
    )!important;
  background-size:220% 220%!important;
  mix-blend-mode:screen!important;
  opacity:.84!important;
  animation:graceboundHoloSweepSite 4.4s ease-in-out infinite!important;
}

#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.is-boss-fullart .boss-fullart-frame::after,
.card-image-viewer.is-booster-fullart-zoom .collection-card.is-boss-fullart .boss-fullart-frame::after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 22% 16%, rgba(255,255,255,.22), transparent 18%),
    linear-gradient(125deg, transparent 25%, rgba(255,255,255,.11) 45%, transparent 62%)!important;
  mix-blend-mode:screen!important;
  opacity:.62!important;
  animation:graceboundHoloGlintSite 4.8s ease-in-out infinite!important;
}

#cardGrid > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::before,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::before,
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.is-boss-fullart:hover .boss-fullart-frame::before,
.card-image-viewer.is-booster-fullart-zoom .collection-card.is-boss-fullart:hover .boss-fullart-frame::before{
  opacity:.96!important;
}

#cardGrid > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::after,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::after,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart:hover .boss-fullart-frame::after,
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.is-boss-fullart:hover .boss-fullart-frame::after,
.card-image-viewer.is-booster-fullart-zoom .collection-card.is-boss-fullart:hover .boss-fullart-frame::after{
  opacity:.74!important;
}


/* === Gracebound 0.2.64 · Full Art holo GLOBAL force-visible === */
/* Les anciens patches Full Art contiennent encore des display:none!important sur
   les pseudo-couches. On force ici l'effet holographique validé sur TOUT rendu
   .is-boss-fullart, peu importe son conteneur. */

html body .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame,
html body .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-frame{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
}

#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
html body .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
html body .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-20%!important;
  z-index:1!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  background:
    linear-gradient(
      115deg,
      transparent 18%,
      rgba(255,0,118,.12) 28%,
      rgba(116,73,255,.15) 36%,
      rgba(0,225,255,.20) 44%,
      rgba(70,255,158,.14) 52%,
      rgba(255,235,90,.18) 60%,
      rgba(255,92,54,.12) 68%,
      transparent 80%
    )!important;
  background-size:220% 220%!important;
  background-position:0% 50%!important;
  mix-blend-mode:screen!important;
  opacity:.90!important;
  filter:saturate(1.12) brightness(1.04)!important;
  animation:graceboundHoloSweepSite 4.4s ease-in-out infinite!important;
}

#cardGrid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.card-grid > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.card-image-viewer-card > .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
.opening-overlay .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
html body .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after,
html body .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 22% 16%,rgba(255,255,255,.24),transparent 18%),
    linear-gradient(125deg,transparent 25%,rgba(255,255,255,.13) 45%,transparent 62%)!important;
  mix-blend-mode:screen!important;
  opacity:.66!important;
  animation:graceboundHoloGlintSite 4.8s ease-in-out infinite!important;
}

/* L'image reste sous l'holographique et le HUD au-dessus. */
html body .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-image,
html body .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-image{
  position:relative!important;
  z-index:0!important;
}
html body .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-shade,
html body .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-shade{
  z-index:3!important;
}
html body .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy,
html body .collection-card.grace-card-frame.is-boss-fullart .rarity-badge,
html body .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge,
html body .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-copy,
html body .reveal-card.grace-card-frame.is-boss-fullart .rarity-badge,
html body .reveal-card.grace-card-frame.is-boss-fullart .boss-fullart-badge{
  z-index:5!important;
}


/* === Gracebound 0.2.64 · Holo EXACT de la maquette v6, appliqué à TOUTES les Full Arts === */
@keyframes graceboundPopupHoloSweepExact{
  0%,100%{background-position:0% 50%}
  50%{background-position:100% 50%}
}
@keyframes graceboundPopupGlintExact{
  0%,100%{opacity:.38;transform:translateX(-4%)}
  50%{opacity:.72;transform:translateX(4%)}
}

/* La carte elle-même devient le support des deux couches, exactement comme .card dans la maquette. */
.collection-card.grace-card-frame.is-boss-fullart{
  isolation:isolate!important;
}
.collection-card.grace-card-frame.is-boss-fullart::before{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:-20%!important;
  z-index:2!important;
  pointer-events:none!important;
  background:
    linear-gradient(
      115deg,
      transparent 18%,
      rgba(255,0,118,.10) 28%,
      rgba(116,73,255,.12) 36%,
      rgba(0,225,255,.17) 44%,
      rgba(70,255,158,.11) 52%,
      rgba(255,235,90,.15) 60%,
      rgba(255,92,54,.10) 68%,
      transparent 80%
    )!important;
  background-size:220% 220%!important;
  mix-blend-mode:screen!important;
  opacity:.84!important;
  animation:graceboundPopupHoloSweepExact 4.4s ease-in-out infinite!important;
}
.collection-card.grace-card-frame.is-boss-fullart::after{
  content:""!important;
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 22% 16%,rgba(255,255,255,.22),transparent 18%),
    linear-gradient(125deg,transparent 25%,rgba(255,255,255,.11) 45%,transparent 62%)!important;
  mix-blend-mode:screen!important;
  opacity:.62!important;
  animation:graceboundPopupGlintExact 4.8s ease-in-out infinite!important;
}

/* On neutralise les anciennes couches holo du frame pour éviter un double effet. */
.collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
.collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  content:none!important;
  display:none!important;
  animation:none!important;
}

/* Les éléments lisibles restent au-dessus de l'holographique. */
.collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy,
.collection-card.grace-card-frame.is-boss-fullart .rarity-badge,
.collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge,
.collection-card.grace-card-frame.is-boss-fullart .quantity-badge,
.collection-card.grace-card-frame.is-boss-fullart .market-reserved-badge,
.collection-card.grace-card-frame.is-boss-fullart .forge-protected-badge,
.collection-card.grace-card-frame.is-boss-fullart .new-tag,
.collection-card.grace-card-frame.is-boss-fullart .favorite-target-tag{
  z-index:10!important;
}


/* === Gracebound 0.2.65 · Holo EXACT v6 — force collection + zoom + booster + global === */
/* Les anciens correctifs utilisent content:none!important avec une forte spécificité.
   On reprend donc explicitement chaque contexte Full Art afin que l'effet de la maquette v6 gagne réellement. */
html body #cardGrid > .collection-card.grace-card-frame.is-boss-fullart,
html body .card-grid > .collection-card.grace-card-frame.is-boss-fullart,
html body .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart,
html body .opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.grace-card-frame.is-boss-fullart,
html body .card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid > .collection-card.grace-card-frame.is-boss-fullart,
html body .collection-card.grace-card-frame.is-boss-fullart{
  isolation:isolate!important;
}

html body #cardGrid > .collection-card.grace-card-frame.is-boss-fullart::before,
html body .card-grid > .collection-card.grace-card-frame.is-boss-fullart::before,
html body .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart::before,
html body .opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.grace-card-frame.is-boss-fullart::before,
html body .card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid > .collection-card.grace-card-frame.is-boss-fullart::before,
html body .collection-card.grace-card-frame.is-boss-fullart::before{
  content:""!important;
  display:block!important;
  visibility:visible!important;
  position:absolute!important;
  inset:-20%!important;
  z-index:2!important;
  pointer-events:none!important;
  background:
    linear-gradient(
      115deg,
      transparent 18%,
      rgba(255,0,118,.10) 28%,
      rgba(116,73,255,.12) 36%,
      rgba(0,225,255,.17) 44%,
      rgba(70,255,158,.11) 52%,
      rgba(255,235,90,.15) 60%,
      rgba(255,92,54,.10) 68%,
      transparent 80%
    )!important;
  background-size:220% 220%!important;
  mix-blend-mode:screen!important;
  opacity:.84!important;
  transform:none!important;
  animation:graceboundPopupHoloSweepExact 4.4s ease-in-out infinite!important;
}

html body #cardGrid > .collection-card.grace-card-frame.is-boss-fullart::after,
html body .card-grid > .collection-card.grace-card-frame.is-boss-fullart::after,
html body .collection-card-viewer .collection-viewer-card-host > .collection-card.grace-card-frame.is-boss-fullart::after,
html body .opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.grace-card-frame.is-boss-fullart::after,
html body .card-image-viewer.is-booster-fullart-zoom .card-image-viewer-card.booster-fullart-grid > .collection-card.grace-card-frame.is-boss-fullart::after,
html body .collection-card.grace-card-frame.is-boss-fullart::after{
  content:""!important;
  display:block!important;
  visibility:visible!important;
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 22% 16%,rgba(255,255,255,.22),transparent 18%),
    linear-gradient(125deg,transparent 25%,rgba(255,255,255,.11) 45%,transparent 62%)!important;
  mix-blend-mode:screen!important;
  opacity:.62!important;
  transform:none!important;
  animation:graceboundPopupGlintExact 4.8s ease-in-out infinite!important;
}

/* Le HUD reste au-dessus dans tous les rendus, y compris les deux zooms. */
html body .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-copy,
html body .collection-card.grace-card-frame.is-boss-fullart .rarity-badge,
html body .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-badge,
html body .collection-card.grace-card-frame.is-boss-fullart .quantity-badge,
html body .collection-card.grace-card-frame.is-boss-fullart .market-reserved-badge,
html body .collection-card.grace-card-frame.is-boss-fullart .forge-protected-badge,
html body .collection-card.grace-card-frame.is-boss-fullart .new-tag,
html body .collection-card.grace-card-frame.is-boss-fullart .favorite-target-tag{
  z-index:10!important;
}


/* === Gracebound 0.2.67 · Full Art live holo — single engine / screen-space zoom === */
/* Coupe définitivement les anciennes couches holo CSS. Elles ne servent plus. */
html body .collection-card.grace-card-frame.is-boss-fullart::before,
html body .collection-card.grace-card-frame.is-boss-fullart::after,
html body .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::before,
html body .collection-card.grace-card-frame.is-boss-fullart .boss-fullart-frame::after{
  content:none!important;
  display:none!important;
  animation:none!important;
  background:none!important;
  opacity:0!important;
}

.gb-fullart-live-holo,
.gb-fullart-screen-holo{
  position:absolute!important;
  inset:0!important;
  z-index:3!important;
  display:block!important;
  visibility:visible!important;
  overflow:hidden!important;
  border-radius:inherit!important;
  pointer-events:none!important;
  background:transparent!important;
  isolation:isolate!important;
}

.gb-fullart-live-holo .gb-fullart-wave,
.gb-fullart-screen-holo .gb-fullart-wave{
  position:absolute!important;
  left:-82%!important;
  top:-38%!important;
  width:74%!important;
  height:176%!important;
  display:block!important;
  pointer-events:none!important;
  background:linear-gradient(
    115deg,
    transparent 0%,
    rgba(255,0,118,.05) 12%,
    rgba(255,0,118,.24) 25%,
    rgba(116,73,255,.28) 36%,
    rgba(0,225,255,.34) 47%,
    rgba(70,255,158,.26) 57%,
    rgba(255,235,90,.30) 67%,
    rgba(255,92,54,.22) 78%,
    rgba(255,255,255,.10) 86%,
    transparent 100%
  )!important;
  mix-blend-mode:screen!important;
  filter:saturate(1.16) brightness(1.04)!important;
  will-change:transform,opacity!important;
}

.gb-fullart-live-holo .gb-fullart-glint,
.gb-fullart-screen-holo .gb-fullart-glint{
  position:absolute!important;
  left:-82%!important;
  top:-38%!important;
  width:74%!important;
  height:176%!important;
  display:block!important;
  pointer-events:none!important;
  background:linear-gradient(
    118deg,
    transparent 0%,
    rgba(255,255,255,0) 30%,
    rgba(255,255,255,.04) 43%,
    rgba(255,255,255,.28) 49%,
    rgba(220,245,255,.13) 54%,
    transparent 61%
  )!important;
  mix-blend-mode:screen!important;
  filter:blur(1.2px)!important;
  will-change:transform,opacity!important;
}

/* Le HUD de la Full Art reste toujours au-dessus du reflet. */
.collection-card.is-boss-fullart .boss-fullart-shade{z-index:4!important}
.collection-card.is-boss-fullart .boss-fullart-copy,
.collection-card.is-boss-fullart .rarity-badge,
.collection-card.is-boss-fullart .boss-fullart-badge,
.collection-card.is-boss-fullart .quantity-badge,
.collection-card.is-boss-fullart .market-reserved-badge,
.collection-card.is-boss-fullart .forge-protected-badge,
.collection-card.is-boss-fullart .market-detail-owned-badge{z-index:8!important}

/* En zoom, l'effet interne tourne avec la carte : on le masque et on utilise
   une copie en coordonnées écran, exactement comme le HUD texte/badges. */
.collection-card.is-boss-fullart.viewer-full-card.gb-fullart-screen-holo-source > .boss-fullart-frame > .gb-fullart-live-holo{
  display:none!important;
}
.gb-fullart-screen-holo{
  position:fixed!important;
  inset:auto!important;
  z-index:585!important;
  mix-blend-mode:normal!important;
}

/* Mini-rendus (sélecteurs) : même vague, sans modifier leur layout. */
.card-picker-card[data-full-art="1"] .card-picker-art,
.chat-preview-card[data-full-art="1"] .card-art-wrap,
.admin-card-preview[data-full-art="1"] .card-art-wrap{
  position:relative!important;
  overflow:hidden!important;
}
.gb-fullart-mini-holo{z-index:3!important}

/* Le détail Marché doit garder son badge de possession lisible sur une Full Art. */
.market-detail-rendered-card.is-boss-fullart .market-detail-owned-badge{
  left:10px!important;
  bottom:10px!important;
  z-index:10!important;
}


/* === Gracebound 0.2.69 · Full Art holo — broad soft wave === */
/* La vague dépasse largement de la carte et ses bords sont masqués/floutés :
   aucun rectangle dur ne doit être perceptible, même sur le zoom écran. */
.gb-fullart-live-holo .gb-fullart-wave,
.gb-fullart-screen-holo .gb-fullart-wave{
  left:-42%!important;
  top:-56%!important;
  width:184%!important;
  height:212%!important;
  background:
    linear-gradient(
      112deg,
      transparent 0%,
      rgba(255,0,118,.00) 7%,
      rgba(255,0,118,.13) 20%,
      rgba(116,73,255,.18) 32%,
      rgba(0,225,255,.24) 44%,
      rgba(70,255,158,.18) 55%,
      rgba(255,235,90,.21) 67%,
      rgba(255,92,54,.14) 79%,
      rgba(255,255,255,.05) 88%,
      transparent 100%
    )!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 10%,#000 30%,#000 70%,rgba(0,0,0,.18) 90%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 10%,#000 30%,#000 70%,rgba(0,0,0,.18) 90%,transparent 100%)!important;
  filter:blur(11px) saturate(1.14) brightness(1.035)!important;
}

.gb-fullart-live-holo .gb-fullart-glint,
.gb-fullart-screen-holo .gb-fullart-glint{
  left:-42%!important;
  top:-56%!important;
  width:184%!important;
  height:212%!important;
  background:
    radial-gradient(ellipse at 50% 50%,rgba(255,255,255,.10) 0%,rgba(235,250,255,.07) 22%,transparent 58%),
    linear-gradient(
      112deg,
      transparent 0%,
      rgba(255,255,255,0) 18%,
      rgba(255,255,255,.035) 34%,
      rgba(255,255,255,.15) 49%,
      rgba(220,245,255,.07) 63%,
      transparent 82%,
      transparent 100%
    )!important;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 12%,#000 34%,#000 66%,rgba(0,0,0,.12) 88%,transparent 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.12) 12%,#000 34%,#000 66%,rgba(0,0,0,.12) 88%,transparent 100%)!important;
  filter:blur(14px)!important;
}

/* === Gracebound · Annonce Full Art Elden Ring · affichage unique par joueur === */
body.fullart-release-open{overflow:hidden!important}
.fullart-release-overlay{
  --release-panel-top:#181b15;
  --release-panel-bottom:#0f120e;
  --release-line:#34382f;
  --release-gold:#d9bd6a;
  --release-gold-soft:#e8cd7e;
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  padding:24px;
  background:rgba(0,0,0,.78);
  backdrop-filter:blur(7px);
  animation:graceboundReleaseOverlayIn .18s ease-out both;
}
.fullart-release-overlay.is-closing{animation:graceboundReleaseOverlayOut .16s ease-in both}
.fullart-release-dialog{
  position:relative;
  width:min(1420px,98vw);
  max-height:97vh;
  overflow:auto;
  padding:38px 40px 18px;
  border-radius:18px;
  border:1px solid var(--release-line);
  color:#efe9d9;
  background:
    radial-gradient(circle at 50% 0%,rgba(219,190,104,.08),transparent 32%),
    linear-gradient(180deg,var(--release-panel-top) 0%,var(--release-panel-bottom) 100%);
  box-shadow:0 30px 100px rgba(0,0,0,.78),inset 0 0 0 1px rgba(255,255,255,.02);
  animation:graceboundReleaseDialogIn .2s ease-out both;
}
.fullart-release-close{
  position:absolute;
  top:14px;
  right:14px;
  z-index:20;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:10px;
  border:1px solid #7d3535;
  background:#3a1717;
  color:#ffb2b2;
  font-size:25px;
  line-height:1;
  cursor:pointer;
}
.fullart-release-close:hover{background:#572020;border-color:#b64b4b;color:#fff}
.fullart-release-eyebrow{
  margin:0 0 8px;
  color:var(--release-gold);
  font-size:10px;
  font-weight:900;
  letter-spacing:2px;
}
.fullart-release-dialog h2{
  margin:0;
  padding-right:60px;
  color:#efe9d9;
  font-family:Georgia,serif;
  font-size:34px;
  line-height:1.14;
  font-weight:500;
}
.fullart-release-subtitle{
  margin:12px 0 0;
  max-width:900px;
  color:#b1b5ab;
  font-size:13px;
  line-height:1.65;
}
.fullart-release-subtitle span{color:var(--release-gold-soft)}
.fullart-release-cards{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:34px;
  align-items:center;
  justify-items:center;
  margin:34px 0 28px;
}
.fullart-release-card-wrap{
  width:100%;
  display:flex;
  justify-content:center;
  perspective:1200px;
}
.fullart-release-card{
  --release-tilt:-4deg;
  position:relative;
  width:min(100%,630px);
  aspect-ratio:16/9;
  border-radius:16px;
  overflow:hidden;
  border:1px solid rgba(217,189,106,.62);
  background:#070807;
  box-shadow:0 22px 58px rgba(0,0,0,.55),0 0 0 1px rgba(255,255,255,.025) inset;
  transform:rotate(var(--release-tilt));
  transform-origin:center center;
  isolation:isolate;
}
.fullart-release-card-right{--release-tilt:4deg}
.fullart-release-art{position:absolute;inset:0;overflow:hidden;background:#090909}
.fullart-release-art img{
  position:absolute;
  left:50%;
  top:50%;
  width:auto;
  height:178%;
  max-width:none;
  transform:translate(-50%,-50%) rotate(-90deg);
  transform-origin:center center;
}
.fullart-release-card::before{
  content:"";
  position:absolute;
  inset:-20%;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(115deg,transparent 18%,rgba(255,0,118,.10) 28%,rgba(116,73,255,.12) 36%,rgba(0,225,255,.17) 44%,rgba(70,255,158,.11) 52%,rgba(255,235,90,.15) 60%,rgba(255,92,54,.10) 68%,transparent 80%);
  background-size:220% 220%;
  mix-blend-mode:screen;
  opacity:.84;
  animation:graceboundReleaseHoloSweep 4.4s ease-in-out infinite;
}
.fullart-release-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:radial-gradient(circle at 22% 16%,rgba(255,255,255,.22),transparent 18%),linear-gradient(125deg,transparent 25%,rgba(255,255,255,.11) 45%,transparent 62%);
  mix-blend-mode:screen;
  opacity:.62;
  animation:graceboundReleaseGlint 4.8s ease-in-out infinite;
}
.fullart-release-shade{
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(to top,rgba(3,4,3,.86) 0%,rgba(3,4,3,.42) 18%,rgba(3,4,3,.08) 36%,transparent 54%);
}
.fullart-release-badges{
  position:absolute;
  top:12px;
  right:12px;
  z-index:5;
  display:flex;
  gap:7px;
}
.fullart-release-badge{
  height:28px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  border-radius:7px;
  font-size:9px;
  font-weight:900;
  letter-spacing:.8px;
  box-shadow:0 2px 8px rgba(0,0,0,.4);
}
.fullart-release-rarity{color:#15130b;background:#e4c25d}
.fullart-release-type{color:#efd691;background:rgba(7,8,6,.94);border:1px solid rgba(212,186,109,.72)}
.fullart-release-copy{
  position:absolute;
  left:18px;
  right:18px;
  bottom:15px;
  z-index:5;
  color:#efe9d9;
  text-shadow:0 2px 10px rgba(0,0,0,.98);
}
.fullart-release-copy strong{
  display:block;
  font-family:Georgia,serif;
  font-size:clamp(22px,2vw,31px);
  font-weight:500;
  line-height:1.05;
}
.fullart-release-copy small{
  display:block;
  margin-top:6px;
  color:#d7d0bd;
  font-size:11px;
  font-weight:700;
}
.fullart-release-footer{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  padding-top:12px;
  border-top:1px solid #2c3028;
}
.fullart-release-footer p{margin:0;color:#91958b;font-size:12px;line-height:1.5}
.fullart-release-confirm{
  flex:0 0 auto;
  min-width:130px;
  padding:12px 18px;
  border:1px solid #8e7844;
  border-radius:10px;
  background:#25291f;
  color:#f0e3b7;
  font-weight:900;
  cursor:pointer;
}
.fullart-release-confirm:hover{background:#32372a}
@keyframes graceboundReleaseHoloSweep{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes graceboundReleaseGlint{0%,100%{opacity:.38;transform:translateX(-4%)}50%{opacity:.72;transform:translateX(4%)}}
@keyframes graceboundReleaseOverlayIn{from{opacity:0}to{opacity:1}}
@keyframes graceboundReleaseOverlayOut{from{opacity:1}to{opacity:0}}
@keyframes graceboundReleaseDialogIn{from{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}
@media(max-width:900px){
  .fullart-release-overlay{padding:12px;overflow:auto;align-items:start}
  .fullart-release-dialog{width:100%;max-height:none;padding:24px 18px 18px;margin:auto 0}
  .fullart-release-dialog h2{font-size:27px}
  .fullart-release-cards{grid-template-columns:1fr;gap:24px}
  .fullart-release-card{width:min(100%,560px)}
  .fullart-release-art img{height:190%}
  .fullart-release-footer{flex-direction:column;align-items:stretch}
  .fullart-release-confirm{width:100%}
}

/* === Gracebound v49 · Full Art canonique dans tous les rendus dynamiques === */
/* Un rendu Full Art utilise toujours la même structure .collection-card > .boss-fullart-frame.
   Les contextes ne changent que sa taille, jamais son HTML ni l'orientation de l'image. */

/* === Gracebound v53 · Marché Full Art propre — une seule implémentation === */
/* Les Full Art utilisent la structure canonique Collection. Le Marché ne modifie
   que les dimensions de leurs CONTENEURS, jamais le frame/image/HUD interne. */

/* Liste des annonces : même gabarit pour toutes les cartes. */
.market-card-grid .market-card-trigger{
  position:relative;
  display:block;
  width:100%;
  min-width:0;
  overflow:visible;
  cursor:pointer;
}
.market-card-grid .market-card-trigger .market-listing-offer-preview,
.market-card-grid .market-card-trigger .market-listing-offer-preview *{
  pointer-events:none!important;
}
.market-card-grid .market-listing-offer-preview:not(.is-double){
  height:343px;
  min-height:343px;
}
.market-card-grid .market-listing-offer-preview:not(.is-double) > .collection-card{
  box-sizing:border-box;
  width:100%!important;
  height:343px!important;
  min-height:343px!important;
  max-height:343px!important;
  margin:0!important;
  transform:none!important;
}
.market-card-grid .market-card-trigger:hover .market-listing-offer-preview:not(.is-double) > .collection-card{
  transform:translateY(-4px)!important;
  border-color:#8f7a47!important;
  box-shadow:0 10px 30px rgba(0,0,0,.28),0 0 0 1px rgba(214,184,94,.14)!important;
}
.market-card-grid .market-listing-offer-preview .market-multi-badge,
.market-card-grid .market-listing-offer-preview .market-owned-status-badge,
.market-card-grid .market-listing-offer-preview .market-possible-badge{
  z-index:30!important;
}

/* Popup : le dialog est explicitement au-dessus du backdrop et reste scrollable. */
.market-detail-overlay .modal-backdrop{z-index:0}
.market-detail-dialog{
  z-index:1;
  max-height:calc(100vh - 40px)!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
}

/* Full Art principale dans la popup : vraie carte Collection, ratio intact. */
.market-fullart-shell.card-grid{
  display:block!important;
  width:245px!important;
  height:410px!important;
  min-width:245px!important;
  min-height:410px!important;
  margin:0 auto!important;
  overflow:hidden!important;
  grid-template-columns:none!important;
  gap:0!important;
}
.market-fullart-shell.card-grid > .collection-card.is-boss-fullart{
  width:245px!important;
  height:410px!important;
  min-width:245px!important;
  min-height:410px!important;
  max-width:245px!important;
  max-height:410px!important;
  margin:0!important;
  transform:none!important;
  overflow:hidden!important;
}
.market-fullart-shell.card-grid > .collection-card.is-boss-fullart:hover{
  transform:none!important;
}
.market-detail-offered-stack.is-double > .market-fullart-shell.card-grid{
  width:150px!important;
  height:251px!important;
  min-width:150px!important;
  min-height:251px!important;
  margin:auto 0!important;
}
.market-detail-offered-stack.is-double > .market-fullart-shell.card-grid > .collection-card.is-boss-fullart{
  width:150px!important;
  height:251px!important;
  min-width:150px!important;
  min-height:251px!important;
  max-width:150px!important;
  max-height:251px!important;
}
.market-detail-demand > .market-fullart-shell.card-grid{margin:0 auto!important}
.market-fullart-shell .market-detail-owned-badge{z-index:20!important}

/* Choix de la popup : boutons simples et fiables. */
.market-detail-options{
  position:relative!important;
  z-index:10!important;
}
.market-detail-options-list{
  display:flex!important;
  gap:8px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding-bottom:4px!important;
}
.market-detail-option-button{
  position:relative!important;
  z-index:1!important;
  min-width:170px!important;
  max-width:220px!important;
  min-height:88px!important;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr)!important;
  gap:8px!important;
  align-items:center!important;
  padding:7px!important;
  pointer-events:auto!important;
  cursor:pointer!important;
}
/* Le visuel n'intercepte jamais le clic : l'événement arrive directement au BUTTON. */
.market-detail-option-button > *{pointer-events:none!important}
.market-detail-option-thumbs{
  width:54px!important;
  height:72px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
}
.market-detail-option-thumbs.has-fullart{
  overflow:hidden!important;
  background:#080a07!important;
}

/* Mini Full Art = vraie carte Collection 205x343 réduite, sans CSS interne spécial. */
.market-option-fullart-shell.card-grid{
  position:relative!important;
  display:block!important;
  width:43px!important;
  height:72px!important;
  flex:0 0 43px!important;
  overflow:hidden!important;
  border-radius:5px!important;
  grid-template-columns:none!important;
  gap:0!important;
  pointer-events:none!important;
}
.market-option-fullart-shell.card-grid > .collection-card.is-boss-fullart{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:205px!important;
  height:343px!important;
  min-width:205px!important;
  min-height:343px!important;
  max-width:205px!important;
  max-height:343px!important;
  margin:0!important;
  transform:translate(-50%,-50%) scale(.21)!important;
  transform-origin:center center!important;
  pointer-events:none!important;
  overflow:hidden!important;
}
.market-option-fullart-shell.card-grid > .collection-card.is-boss-fullart:hover{
  transform:translate(-50%,-50%) scale(.21)!important;
}
.market-detail-option-thumbs.is-double .market-option-fullart-shell.card-grid{
  width:27px!important;
  flex-basis:27px!important;
}
.market-detail-option-thumbs.is-double .market-option-fullart-shell.card-grid > .collection-card.is-boss-fullart,
.market-detail-option-thumbs.is-double .market-option-fullart-shell.card-grid > .collection-card.is-boss-fullart:hover{
  transform:translate(-50%,-50%) scale(.18)!important;
}

@media(max-width:820px){
  .market-fullart-shell.card-grid,
  .market-fullart-shell.card-grid > .collection-card.is-boss-fullart{
    width:215px!important;
    height:360px!important;
    min-width:215px!important;
    min-height:360px!important;
    max-width:215px!important;
    max-height:360px!important;
  }
}


/* === Gracebound v55 · correctifs de validation après cleanup v54 === */
/* Booster : un seul passif doit être exactement centré dans la Full Art révélée. */
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.is-boss-fullart
  .boss-fullart-copy .card-passive-slots.has-one .card-affinity-tags{
  width:100%!important;
  grid-template-columns:minmax(0,78%)!important;
  justify-content:center!important;
  justify-items:center!important;
}
.opening-overlay .reveal-card.booster-fullart-reveal .booster-fullart-grid > .collection-card.is-boss-fullart
  .boss-fullart-copy .card-passive-slots.has-one .card-affinity-tags > span{
  width:100%!important;
  justify-self:center!important;
  text-align:center!important;
}

/* Marché popup : la carte Full Art reste une vraie 205x343 de Collection.
   On scale le bloc entier au lieu de redimensionner son contenu interne : aucun crop. */
.market-fullart-shell.card-grid{
  position:relative!important;
  width:245px!important;
  height:410px!important;
  min-width:245px!important;
  min-height:410px!important;
  overflow:visible!important;
}
.market-fullart-shell.card-grid > .collection-card.is-boss-fullart{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:205px!important;
  height:343px!important;
  min-width:205px!important;
  min-height:343px!important;
  max-width:205px!important;
  max-height:343px!important;
  margin:0!important;
  transform:translate(-50%,-50%) scale(1.1951219512)!important;
  transform-origin:center center!important;
  overflow:hidden!important;
}
.market-fullart-shell.card-grid > .collection-card.is-boss-fullart:hover{
  transform:translate(-50%,-50%) scale(1.1951219512)!important;
}
.market-detail-offered-stack.is-double > .market-fullart-shell.card-grid{
  position:relative!important;
  width:150px!important;
  height:251px!important;
  min-width:150px!important;
  min-height:251px!important;
  overflow:visible!important;
}
.market-detail-offered-stack.is-double > .market-fullart-shell.card-grid > .collection-card.is-boss-fullart,
.market-detail-offered-stack.is-double > .market-fullart-shell.card-grid > .collection-card.is-boss-fullart:hover{
  width:205px!important;
  height:343px!important;
  min-width:205px!important;
  min-height:343px!important;
  max-width:205px!important;
  max-height:343px!important;
  transform:translate(-50%,-50%) scale(.7317073171)!important;
}
@media(max-width:820px){
  .market-fullart-shell.card-grid{
    width:215px!important;
    height:360px!important;
    min-width:215px!important;
    min-height:360px!important;
  }
  .market-fullart-shell.card-grid > .collection-card.is-boss-fullart,
  .market-fullart-shell.card-grid > .collection-card.is-boss-fullart:hover{
    width:205px!important;
    height:343px!important;
    min-width:205px!important;
    min-height:343px!important;
    max-width:205px!important;
    max-height:343px!important;
    transform:translate(-50%,-50%) scale(1.0487804878)!important;
  }
}


/* === Gracebound v58 · Core renderer contexts ===
   Le HTML des cartes vient de core.js. Les contextes ne règlent que la taille. */

/* Picker global : toutes les cartes utilisent la vraie structure Collection. */
.card-picker-card.canonical-card-picker{
  position:relative!important;
  display:block!important;
  padding:0!important;
  min-height:0!important;
  aspect-ratio:205 / 343!important;
  overflow:hidden!important;
  border-radius:13px!important;
  background:#0b0e0a!important;
  cursor:pointer!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-shell.card-grid{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  grid-template-columns:none!important;
  gap:0!important;
  overflow:hidden!important;
  border-radius:inherit!important;
  pointer-events:none!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-card.collection-card{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  transform:none!important;
  border-radius:inherit!important;
  pointer-events:none!important;
}
.card-picker-card.canonical-card-picker:hover .card-picker-canonical-card.collection-card{
  transform:none!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-card:not(.is-boss-fullart) .card-art-wrap{
  height:64%!important;
  min-height:0!important;
  margin:7px 7px 0!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-card:not(.is-boss-fullart) .card-info{
  padding:9px 10px 8px!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-card:not(.is-boss-fullart) .card-info h3{
  margin:3px 0 6px!important;
  min-height:0!important;
  font-size:14px!important;
  line-height:1.08!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-card:not(.is-boss-fullart) .card-affinity-tags > span{
  min-height:18px!important;
  height:auto!important;
  padding:3px 5px!important;
  font-size:7px!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-card.is-boss-fullart .boss-fullart-frame{
  position:absolute!important;
  inset:-1px!important;
  width:auto!important;
  height:auto!important;
  min-height:0!important;
  overflow:hidden!important;
  border-radius:inherit!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-card.is-boss-fullart .boss-fullart-image{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center center!important;
  filter:none!important;
  opacity:1!important;
  visibility:visible!important;
}
.card-picker-card.canonical-card-picker .card-picker-disabled-label,
.card-picker-card.canonical-card-picker .card-picker-market-label{
  z-index:40!important;
  pointer-events:none!important;
}

/* Chat : même carte canonique, format fixe de Collection. */
.chat-card-preview .chat-card-canonical.card-grid{
  display:block!important;
  width:205px!important;
  height:343px!important;
  margin:0 auto!important;
  grid-template-columns:none!important;
  gap:0!important;
  overflow:hidden!important;
  border-radius:15px!important;
}
.chat-card-preview .chat-card-canonical.card-grid > .collection-card{
  width:205px!important;
  height:343px!important;
  min-width:205px!important;
  min-height:343px!important;
  max-width:205px!important;
  max-height:343px!important;
  margin:0!important;
  transform:none!important;
  pointer-events:none!important;
}
.chat-card-preview .chat-card-canonical.card-grid > .collection-card:hover{
  transform:none!important;
}
.chat-card-preview .chat-card-canonical.card-grid > .collection-card.is-boss-fullart .boss-fullart-image{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  opacity:1!important;
  visibility:visible!important;
}

/* Roue : même gabarit 205/343 pour cartes normales ET Full Art. */
.wheel-choice-grid{
  align-items:start!important;
}
.wheel-choice-card{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-width:0!important;
  aspect-ratio:205 / 343!important;
}
.wheel-choice-card .wheel-card-shell.card-grid{
  position:absolute!important;
  inset:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  grid-template-columns:none!important;
  gap:0!important;
  overflow:hidden!important;
  border-radius:15px!important;
  pointer-events:none!important;
}
.wheel-choice-card .wheel-card-shell.card-grid > .collection-card{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  aspect-ratio:205 / 343!important;
  transform:none!important;
  overflow:hidden!important;
}
.wheel-choice-card.is-selected .wheel-card-shell.card-grid > .collection-card{
  outline:2px solid #e1bd59!important;
  outline-offset:-2px!important;
  transform:none!important;
}
.wheel-choice-card .wheel-card-shell.card-grid > .collection-card:not(.is-boss-fullart) .card-art-wrap{
  height:64%!important;
  min-height:0!important;
  margin:8px 8px 0!important;
}
.wheel-choice-card .wheel-card-shell.card-grid > .collection-card:not(.is-boss-fullart) .card-info{
  padding:10px 11px 9px!important;
}
.wheel-choice-card .wheel-card-shell.card-grid > .collection-card:not(.is-boss-fullart) .card-info h3{
  min-height:0!important;
  margin:4px 0 8px!important;
  font-size:15px!important;
  line-height:1.08!important;
}
.wheel-choice-card .wheel-card-shell.card-grid > .collection-card:not(.is-boss-fullart) .card-affinity-tags > span{
  min-height:20px!important;
  height:auto!important;
  padding:3px 6px!important;
  font-size:7px!important;
}
.wheel-choice-card .wheel-card-shell.card-grid > .collection-card.is-boss-fullart .boss-fullart-image{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  opacity:1!important;
  visibility:visible!important;
}
.wheel-choice-card .wheel-ownership-badge{
  z-index:30!important;
}
.wheel-final-card .wheel-final-static{
  width:min(240px,72vw)!important;
  max-width:240px!important;
  aspect-ratio:205 / 343!important;
  flex:0 0 auto!important;
  pointer-events:none!important;
}
.wheel-final-card .wheel-final-static .wheel-card-shell.card-grid{
  position:absolute!important;
  inset:0!important;
}

@media(max-width:720px){
  .wheel-final-card .wheel-final-static{width:min(205px,72vw)!important;max-width:205px!important}
}

/* v58.1 · Les cartes canoniques placées dans des popups ne doivent jamais être
   différées par content-visibility:auto : dans un conteneur scrollable cela
   pouvait produire les rectangles noirs observés dans le picker Chat/Profil. */
.card-picker-card.canonical-card-picker .card-picker-canonical-card.collection-card,
.chat-card-preview .chat-card-canonical.card-grid > .collection-card,
.wheel-choice-card .wheel-card-shell.card-grid > .collection-card{
  content-visibility:visible!important;
  contain:none!important;
}

/* === Gracebound v59 · Picker canonique : alignement Full Art ===
   La Collection utilise un frame à -1px pour passer sous sa propre bordure.
   Dans le picker, la carte est déjà clipée par le bouton : on remet le frame à 0
   afin que l'image soit parfaitement centrée sans toucher au renderer Core. */
.card-picker-card.canonical-card-picker.is-full-art
  .card-picker-canonical-card.collection-card.is-boss-fullart
  .boss-fullart-frame{
  inset:0!important;
  width:100%!important;
  height:100%!important;
}
.card-picker-card.canonical-card-picker.is-full-art
  .card-picker-canonical-card.collection-card.is-boss-fullart
  .boss-fullart-image{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-position:50% 50%!important;
}

/* === Gracebound v60 · Card Picker paginé + alignement canonique === */
.card-picker-dialog{
  display:flex!important;
  flex-direction:column!important;
  height:min(900px,92vh)!important;
  max-height:92vh!important;
}
.card-picker-grid{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:auto!important;
}
.card-picker-pagination{
  flex:0 0 auto!important;
  display:grid!important;
  grid-template-columns:auto 1fr auto!important;
  align-items:center!important;
  gap:12px!important;
  margin-top:10px!important;
  padding-top:10px!important;
  border-top:1px solid #292d25!important;
}
.card-picker-pagination[hidden]{display:none!important}
.card-picker-pagination > span{
  min-width:0!important;
  text-align:center!important;
  color:#8d9186!important;
  font-size:10px!important;
  letter-spacing:.3px!important;
}
.card-picker-pagination .btn{
  min-width:118px!important;
  min-height:36px!important;
  padding:7px 12px!important;
  font-size:10px!important;
}
.card-picker-pagination .btn:disabled{
  opacity:.35!important;
  cursor:not-allowed!important;
}
.card-picker-no-results{
  grid-column:1/-1!important;
  min-height:240px!important;
  display:grid!important;
  place-items:center!important;
  color:#777c72!important;
  font-size:12px!important;
  text-align:center!important;
}

/* Le bouton du picker fournit déjà la bordure. La carte intérieure ne doit pas
   ajouter une seconde bordure d'un pixel, qui provoquait le léger décalage. */
.card-picker-card.canonical-card-picker .card-picker-canonical-shell.card-grid{
  inset:0!important;
  padding:0!important;
  margin:0!important;
  box-sizing:border-box!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-card.collection-card{
  left:0!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  box-sizing:border-box!important;
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  overflow:hidden!important;
}
.card-picker-card.canonical-card-picker.is-full-art
  .card-picker-canonical-card.collection-card.is-boss-fullart
  .boss-fullart-frame{
  inset:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  box-sizing:border-box!important;
}
.card-picker-card.canonical-card-picker.is-full-art
  .card-picker-canonical-card.collection-card.is-boss-fullart
  .boss-fullart-image{
  inset:0!important;
  left:0!important;
  top:0!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  object-position:center center!important;
}

@media(max-width:760px){
  .card-picker-dialog{
    height:min(94vh,900px)!important;
    max-height:94vh!important;
  }
  .card-picker-pagination{
    grid-template-columns:1fr 1fr!important;
  }
  .card-picker-pagination > span{
    grid-column:1/-1!important;
    grid-row:1!important;
  }
  .card-picker-pagination .btn{
    width:100%!important;
  }
}

/* === Gracebound v61 · Card Picker : grille à lignes explicites ===
   Les cartes canoniques ont un contenu interne absolu. Une grille avec lignes
   auto pouvait donc sous-estimer leur hauteur et empiler les rangées.
   Ici le picker possède un gabarit fixe au ratio 205/343 ; le renderer Core
   reste totalement inchangé. */
.card-picker-grid{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  grid-auto-rows:284px!important;
  column-gap:14px!important;
  row-gap:14px!important;
  align-items:start!important;
  justify-items:center!important;
  align-content:start!important;
  padding:4px 6px 14px!important;
}
.card-picker-card.canonical-card-picker{
  width:170px!important;
  min-width:170px!important;
  max-width:170px!important;
  height:284px!important;
  min-height:284px!important;
  max-height:284px!important;
  aspect-ratio:auto!important;
  align-self:start!important;
  justify-self:center!important;
  margin:0!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-shell.card-grid,
.card-picker-card.canonical-card-picker .card-picker-canonical-card.collection-card{
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
}

@media(max-width:1180px){
  .card-picker-grid{
    grid-template-columns:repeat(5,minmax(0,1fr))!important;
  }
}
@media(max-width:980px){
  .card-picker-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}
@media(max-width:780px){
  .card-picker-grid{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    grid-auto-rows:267px!important;
    column-gap:12px!important;
    row-gap:12px!important;
  }
  .card-picker-card.canonical-card-picker{
    width:160px!important;
    min-width:160px!important;
    max-width:160px!important;
    height:267px!important;
    min-height:267px!important;
    max-height:267px!important;
  }
}
@media(max-width:560px){
  .card-picker-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:250px!important;
  }
  .card-picker-card.canonical-card-picker{
    width:150px!important;
    min-width:150px!important;
    max-width:150px!important;
    height:250px!important;
    min-height:250px!important;
    max-height:250px!important;
  }
}

/* === Gracebound v62 · Picker : carte canonique scalée, aucun crop ===
   On ne redimensionne plus les composants internes de la carte. Le renderer
   reste réellement en 205x343 (comme Collection), puis le shell entier est
   réduit. Cela conserve le bas de carte et le placement exact des passifs. */
.card-picker-grid{
  grid-auto-rows:286px!important;
}
.card-picker-card.canonical-card-picker{
  width:170px!important;
  min-width:170px!important;
  max-width:170px!important;
  height:285px!important;
  min-height:285px!important;
  max-height:285px!important;
  overflow:hidden!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-shell.card-grid{
  position:absolute!important;
  left:0!important;
  top:0!important;
  right:auto!important;
  bottom:auto!important;
  width:205px!important;
  height:343px!important;
  min-width:205px!important;
  min-height:343px!important;
  max-width:205px!important;
  max-height:343px!important;
  transform:scale(.8292682927)!important;
  transform-origin:top left!important;
  overflow:hidden!important;
}
.card-picker-card.canonical-card-picker .card-picker-canonical-card.collection-card{
  position:absolute!important;
  inset:0!important;
  width:205px!important;
  height:343px!important;
  min-width:205px!important;
  min-height:343px!important;
  max-width:205px!important;
  max-height:343px!important;
  transform:none!important;
  transform-origin:center center!important;
  overflow:hidden!important;
}
.card-picker-card.canonical-card-picker:hover .card-picker-canonical-card.collection-card{
  transform:none!important;
}

/* Full Art mono-passif : même centrage que Collection. */
.card-picker-card.canonical-card-picker.is-full-art
  .card-picker-canonical-card.is-boss-fullart
  .card-passive-slots.has-one .card-affinity-tags{
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,78%)!important;
  justify-content:center!important;
  justify-items:center!important;
  align-items:center!important;
}
.card-picker-card.canonical-card-picker.is-full-art
  .card-picker-canonical-card.is-boss-fullart
  .card-passive-slots.has-one .card-affinity-tags > span{
  width:100%!important;
  justify-self:center!important;
  text-align:center!important;
}

@media(max-width:780px){
  .card-picker-grid{grid-auto-rows:269px!important}
  .card-picker-card.canonical-card-picker{
    width:160px!important;
    min-width:160px!important;
    max-width:160px!important;
    height:268px!important;
    min-height:268px!important;
    max-height:268px!important;
  }
  .card-picker-card.canonical-card-picker .card-picker-canonical-shell.card-grid{
    transform:scale(.7804878049)!important;
  }
}
@media(max-width:560px){
  .card-picker-grid{grid-auto-rows:252px!important}
  .card-picker-card.canonical-card-picker{
    width:150px!important;
    min-width:150px!important;
    max-width:150px!important;
    height:251px!important;
    min-height:251px!important;
    max-height:251px!important;
  }
  .card-picker-card.canonical-card-picker .card-picker-canonical-shell.card-grid{
    transform:scale(.7317073171)!important;
  }
}

/* === Gracebound v64 · Annonce Tarnished Edition · one-shot par joueur === */
.tarnished-release-dialog{
  width:min(1180px,96vw)!important;
  padding-bottom:22px!important;
}
.tarnished-release-subtitle{max-width:780px!important}
.tarnished-release-cards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px;
  align-items:center;
  justify-items:center;
  margin:30px 0 28px;
  padding:0 8px;
}
.tarnished-release-card{
  --tarnished-tilt:0deg;
  position:relative;
  width:min(100%,270px);
  aspect-ratio:205/343;
  overflow:hidden;
  isolation:isolate;
  border:1px solid rgba(217,189,106,.58);
  border-radius:16px;
  background:
    radial-gradient(circle at 50% 28%,rgba(211,184,103,.13),transparent 35%),
    linear-gradient(180deg,#191b16 0%,#0a0c09 100%);
  box-shadow:0 22px 52px rgba(0,0,0,.52),0 0 0 1px rgba(255,255,255,.02) inset;
  transform:rotate(var(--tarnished-tilt));
  transform-origin:center;
}
.tarnished-release-card-left{--tarnished-tilt:-3deg}
.tarnished-release-card-center{--tarnished-tilt:1deg}
.tarnished-release-card-right{--tarnished-tilt:3deg}
.tarnished-release-card::before{
  content:"";
  position:absolute;
  inset:-35% -90%;
  z-index:3;
  pointer-events:none;
  background:linear-gradient(112deg,transparent 39%,rgba(255,240,189,.03) 44%,rgba(255,239,178,.18) 49%,rgba(255,255,255,.11) 52%,rgba(225,199,121,.03) 57%,transparent 62%);
  transform:translateX(-35%);
  animation:graceboundTarnishedSheen 5.4s ease-in-out infinite;
  mix-blend-mode:screen;
}
.tarnished-release-art{
  position:absolute;
  inset:0;
  z-index:0;
  display:grid;
  place-items:center;
  padding:34px 22px 88px;
  overflow:hidden;
  background:
    radial-gradient(circle at 50% 38%,rgba(74,75,62,.20),transparent 50%),
    linear-gradient(180deg,rgba(5,6,5,.10),rgba(5,6,5,.42));
}
.tarnished-release-art::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(to top,rgba(4,5,4,.96) 0%,rgba(4,5,4,.60) 18%,rgba(4,5,4,.08) 43%,transparent 64%);
}
.tarnished-release-art img{
  position:relative;
  z-index:0;
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  filter:drop-shadow(0 14px 18px rgba(0,0,0,.48));
}
.tarnished-release-badges{
  position:absolute;
  top:12px;
  left:12px;
  right:12px;
  z-index:6;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}
.tarnished-release-rarity,
.tarnished-release-type{
  min-height:27px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 10px;
  border-radius:7px;
  font-size:8px;
  font-weight:900;
  letter-spacing:.8px;
  box-shadow:0 2px 8px rgba(0,0,0,.38);
}
.tarnished-release-rarity.rarity-ur{background:#d88849;color:#181009}
.tarnished-release-rarity.rarity-sr{background:#c9829f;color:#1a0f14}
.tarnished-release-type{
  border:1px solid rgba(212,186,109,.56);
  color:#ead392;
  background:rgba(7,8,6,.90);
}
.tarnished-release-copy{
  position:absolute;
  left:16px;
  right:16px;
  bottom:16px;
  z-index:6;
  color:#efe9d9;
  text-shadow:0 2px 10px rgba(0,0,0,.98);
}
.tarnished-release-copy strong{
  display:block;
  font-family:Georgia,serif;
  font-size:clamp(17px,1.55vw,22px);
  font-weight:600;
  line-height:1.08;
}
.tarnished-release-copy small{
  display:block;
  margin-top:7px;
  color:#d8c88d;
  font-size:10px;
  font-weight:800;
  letter-spacing:.4px;
}
@keyframes graceboundTarnishedSheen{
  0%,22%{transform:translateX(-35%);opacity:0}
  36%{opacity:.78}
  56%{transform:translateX(35%);opacity:.32}
  70%,100%{transform:translateX(35%);opacity:0}
}
@media(max-width:900px){
  .tarnished-release-cards{
    grid-template-columns:1fr;
    gap:22px;
    margin:26px 0 22px;
  }
  .tarnished-release-card{width:min(100%,300px)}
  .tarnished-release-card-left,
  .tarnished-release-card-center,
  .tarnished-release-card-right{--tarnished-tilt:0deg}
}


/* === Gracebound v66 · Annonce Sekiro · one-shot par joueur === */
.sekiro-release-dialog{
  width:min(920px,96vw)!important;
}
.sekiro-release-cards{
  grid-template-columns:repeat(2,minmax(0,300px))!important;
  justify-content:center!important;
  gap:42px!important;
  max-width:700px;
  margin-left:auto!important;
  margin-right:auto!important;
}
.sekiro-release-card{
  width:min(100%,285px)!important;
}
@media(max-width:700px){
  .sekiro-release-cards{
    grid-template-columns:1fr!important;
    gap:22px!important;
  }
  .sekiro-release-card{
    width:min(100%,300px)!important;
  }
}
