/* GeoHunt V239 modular runtime styles. */

/* === geohuntV219SocialHardFix === */
/* V219 — hard fix: Social layout follows its own panel, not old viewport breakpoints. */
.ghs213-panel{container-type:inline-size!important}
.ghs213-main,.ghs213-content,.ghs216-workspace,.ghs216-chat,.ghs216-chatHead,.ghs216-stream,.ghs216-compose{width:100%!important;max-width:none!important;min-width:0!important}
.ghs213-main,.ghs213-content,.ghs216-workspace,.ghs216-chat{height:100%!important;min-height:0!important}
.ghs216-workspace{display:grid!important;grid-template-columns:300px minmax(0,1fr)!important;overflow:hidden!important;background:#0a1318!important}
.ghs216-sidebar{display:grid!important;grid-template-rows:auto auto minmax(0,1fr)!important;min-width:0!important;min-height:0!important;overflow:hidden!important;background:linear-gradient(180deg,#101c22,#0d171c)!important;border-right:1px solid #2a4049!important;color:#e8eef1!important}
.ghs216-sideHead,.ghs216-search{background:#101c22!important;color:#e8eef1!important}
.ghs216-chat{display:grid!important;grid-template-rows:76px minmax(0,1fr) 76px!important;overflow:hidden!important;background:#0a1318!important;color:#e8eef1!important}
.ghs216-chatHead{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;padding:0 16px!important;overflow:hidden!important;background:linear-gradient(180deg,#111f25,#0f1a20)!important;border-bottom:1px solid #2a4049!important;color:#e8eef1!important}
.ghs216-identity{min-width:0!important;flex:1 1 auto!important}.ghs216-actions{flex:0 0 auto!important}
.ghs216-stream{min-height:0!important;overflow:auto!important;background:#0a1318!important;color:#e8eef1!important}
.ghs216-compose{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important;padding:13px 16px!important;background:linear-gradient(180deg,#101c22,#0e191e)!important;border-top:1px solid #2a4049!important;color:#e8eef1!important}
/* Compact panel widths: keep contacts visible rather than deleting them. */
@container (max-width:900px){.ghs216-workspace{grid-template-columns:250px minmax(0,1fr)!important}.ghs216-chat{grid-template-rows:70px minmax(0,1fr) 72px!important}.ghs216-actions button{padding:0 7px!important;font-size:8px!important}}
@container (max-width:690px){.ghs216-workspace{grid-template-columns:220px minmax(0,1fr)!important}.ghs216-actions button:nth-child(2){display:none!important}}

/* === geohuntV220SocialFlexFix === */
/* V220 — hard layout reset for Social. No CSS grid for the main workspace. */
.ghs213-panel{
  overflow:hidden!important;
}
.ghs213-main,
.ghs213-content{
  display:block!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;
  padding:0!important;
  overflow:hidden!important;
}
.ghs216-workspace{
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  background:#0a1318!important;
}
.ghs216-sidebar{
  display:grid!important;
  flex:0 0 300px!important;
  width:300px!important;
  min-width:300px!important;
  max-width:300px!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  grid-template-rows:auto auto minmax(0,1fr)!important;
  background:linear-gradient(180deg,#101c22,#0d171c)!important;
  border-right:1px solid #2a4049!important;
}
.ghs216-chat{
  display:grid!important;
  flex:1 1 0!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  height:100%!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  grid-template-rows:76px minmax(0,1fr) 76px!important;
  background:#0a1318!important;
}
.ghs216-chatHead,
.ghs216-stream,
.ghs216-compose{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
}
.ghs216-chatHead{
  display:flex!important;
  height:auto!important;
  padding:0 16px!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
  overflow:hidden!important;
  background:linear-gradient(180deg,#111f25,#0f1a20)!important;
  border-bottom:1px solid #2a4049!important;
}
.ghs216-stream{
  min-height:0!important;
  overflow:auto!important;
  padding:20px 22px!important;
  background:#0a1318!important;
}
.ghs216-compose{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  height:auto!important;
  padding:13px 16px!important;
  background:linear-gradient(180deg,#101c22,#0e191e)!important;
  border-top:1px solid #2a4049!important;
}
.ghs216-identity{
  flex:1 1 auto!important;
  min-width:0!important;
}
.ghs216-actions{
  display:flex!important;
  flex:0 0 auto!important;
  gap:7px!important;
}

/* Explicitly kill old responsive rules that hid the sidebar. */
@media(max-width:900px){
  .ghs216-workspace{
    display:flex!important;
    flex-direction:row!important;
  }
  .ghs216-sidebar{
    display:grid!important;
    flex-basis:250px!important;
    width:250px!important;
    min-width:250px!important;
    max-width:250px!important;
  }
  .ghs216-chat{
    display:grid!important;
    flex:1 1 0!important;
    width:auto!important;
    min-width:0!important;
    grid-template-rows:70px minmax(0,1fr) 72px!important;
  }
  .ghs216-actions button{
    padding:0 7px!important;
    font-size:8px!important;
  }
}
@media(max-width:650px){
  .ghs216-sidebar{
    flex-basis:220px!important;
    width:220px!important;
    min-width:220px!important;
    max-width:220px!important;
  }
  .ghs216-actions button:nth-child(2){
    display:none!important;
  }
}

/* === geohuntV221SocialInstant === */
/* V221 — instant friend switching, no page-like refresh animation. */

/* A real visual seam between list and chat: no overlap of composer under sidebar. */
.ghs216-workspace{
  gap:1px!important;
  background:#2a4049!important;
}
.ghs216-sidebar{
  border-right:0!important;
  position:relative!important;
  z-index:2!important;
}
.ghs216-chat{
  position:relative!important;
  z-index:1!important;
  animation:none!important;
  transition:none!important;
}
.ghs216-chatHead,
.ghs216-stream,
.ghs216-compose,
.ghs216-identity,
.ghs216-actions{
  animation:none!important;
  transition:none!important;
}
.ghs216-compose{
  box-sizing:border-box!important;
}

/* Disable the old V217 whole-chat movement/fade completely. */
.ghs216-chat.ghs217-switching{
  animation:none!important;
  opacity:1!important;
  transform:none!important;
}

/* Contacts react instantly; only color/border changes remain. */
.ghs216-person{
  transition:background-color .07s linear,border-color .07s linear!important;
  transform:none!important;
}
.ghs216-person:hover,
.ghs216-person:active{
  transform:none!important;
}

/* New sent message gets only a tiny local entrance, not a page transition. */
.ghs216-bubble.ghs217-new{
  animation:ghs221BubbleIn .10s ease-out!important;
}
@keyframes ghs221BubbleIn{
  from{opacity:0;transform:translateY(2px)}
  to{opacity:1;transform:translateY(0)}
}

/* === geohuntV225MarketFixStyle === */
.marketMyBidsV225{
  margin:0 0 14px;padding:14px;border:1px solid #4b5d63;border-radius:11px;
  background:#111b20;
}
.marketMyBidsHeadV225{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:10px}
.marketMyBidsHeadV225 small,.marketMyBidsHeadV225 h3{display:block;margin:0}
.marketMyBidsHeadV225 small{font:800 8px/1 Space Mono,monospace;letter-spacing:.12em;color:#8899a1}
.marketMyBidsHeadV225 h3{margin-top:5px;font-size:16px}
.marketMyBidsHeadV225 span{font-size:9px;color:#d8ad5b}
.marketMyBidsGridV225{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}
.marketMyBidV225{
  min-width:0;display:grid;grid-template-columns:66px minmax(0,1fr) auto;gap:10px;align-items:center;
  padding:8px;border:1px solid #344a54;border-radius:9px;background:#0d171c;color:#e8eef1;cursor:pointer;text-align:left
}
.marketMyBidV225:hover{border-color:#6b8792;background:#122229}
.marketMyBidV225 img{width:66px;height:58px;object-fit:cover;border-radius:7px}
.marketMyBidV225 b,.marketMyBidV225 small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.marketMyBidV225 b{font-size:10px}.marketMyBidV225 small{margin-top:4px;color:#7f929b;font-size:8px}
.marketMyBidV225 strong{color:#e0b35e;font-size:11px;white-space:nowrap}
.marketMyBidV225 em{display:block;margin-top:4px;color:#8ca0a9;font-size:7px;font-style:normal}

/* === geohuntV228StabilityStyle === */
.friendsServerStateV228{padding:20px;border:1px solid #2d3c45;border-radius:12px;background:#10181e;color:#91a3ad}
.friendRequestBarV228{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.friendRequestV228{display:flex;align-items:center;gap:9px;padding:9px 11px;border:1px solid #3b4c55;border-radius:9px;background:#101a20}
.friendRequestV228 b{font-size:10px}.friendRequestV228 small{font-size:8px;color:#82939c}
.friendRequestV228 button{height:30px;border:1px solid #445761;border-radius:7px;background:#16242b;color:#dce6ea;font-size:8px;cursor:pointer}
.friendRequestV228 button.primary{background:#d6aa55;color:#11171b;border-color:#d6aa55}
.addFriendResultsV228{display:grid;gap:6px;margin-top:10px;max-height:300px;overflow:auto}
.addFriendResultV228{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;padding:9px;border:1px solid #30414b;border-radius:8px;background:#0e181d}
.addFriendResultV228 b,.addFriendResultV228 small{display:block}.addFriendResultV228 small{color:#84949d;font-size:8px;margin-top:3px}
.addFriendResultV228 button{height:32px;border:0;border-radius:7px;background:#d6aa55;color:#11171b;font-weight:900;font-size:8px;cursor:pointer}
img[data-gh-fast="1"]{background:#132027}
img[data-gh-fast="1"].ghImgLoadedV228{animation:ghImgInV228 .12s ease-out}
@keyframes ghImgInV228{from{opacity:.72}to{opacity:1}}
.expeditionServerBriefV228{display:grid;place-items:center;text-align:center;min-height:390px}
.expeditionServerBriefV228 small{font-size:8px;letter-spacing:.16em;color:#8ca3ae}
.expeditionServerBriefV228 h2{font-size:26px;margin:8px 0}
.expeditionServerBriefV228 p{font-size:10px;color:#83959f}

/* === geohuntV229RuntimeFixStyle === */
/* Self-contained server expedition. No dependency on the old reveal stack. */
.serverExpV229{position:relative;z-index:2;width:100%;padding:22px 20px 18px;box-sizing:border-box}
.serverExpHeadV229{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:16px}
.serverExpHeadV229 small{display:block;font:800 8px/1.2 Space Mono,monospace;letter-spacing:.14em;color:#8aa0aa}
.serverExpHeadV229 h2{margin:6px 0 0;font-size:24px}
.serverExpHeadV229 b{font:800 9px/1 Space Mono,monospace;color:#d4ab59}
.serverExpCardsV229{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.serverExpCardV229{position:relative;aspect-ratio:.66;border:1px solid #40515a;border-radius:11px;background:#0d171c;overflow:hidden;cursor:pointer;padding:0;perspective:900px}
.serverExpCardV229>span{position:absolute;inset:0;display:block;transform-style:preserve-3d;transition:transform .28s cubic-bezier(.2,.8,.2,1)}
.serverExpCardV229.revealed>span{transform:rotateY(180deg)}
.serverExpBackV229,.serverExpFrontV229{position:absolute;inset:0;backface-visibility:hidden}
.serverExpBackV229{display:grid;place-items:center;background:linear-gradient(145deg,#15242b,#0d171c);color:#d8e2e6}
.serverExpBackV229 div{text-align:center}.serverExpBackV229 strong{display:block;font-size:17px;letter-spacing:.08em}.serverExpBackV229 em{display:block;margin-top:10px;font:700 7px/1.2 Space Mono,monospace;color:#7f929b;font-style:normal}
.serverExpFrontV229{transform:rotateY(180deg);display:grid;grid-template-rows:1fr auto;background:#0f181e}
.serverExpFrontV229 img{width:100%;height:100%;min-height:0;object-fit:cover;display:block;background:#17242a}
.serverExpInfoV229{padding:10px;border-top:2px solid var(--rar,#64747b);text-align:left}
.serverExpInfoV229 small,.serverExpInfoV229 b,.serverExpInfoV229 span{display:block}
.serverExpInfoV229 small{font-size:7px;color:#84969f}.serverExpInfoV229 b{font-size:11px;margin:4px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.serverExpInfoV229 span{font-size:7px;color:var(--rar,#91a1a8)}
.serverExpActionsV229{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.serverExpActionsV229 button{height:38px;border:1px solid #40525c;border-radius:8px;background:#142129;color:#dce5e9;padding:0 14px;font:800 8px/1 Space Mono,monospace;cursor:pointer}
.serverExpActionsV229 button.primary{background:#d4aa56;border-color:#d4aa56;color:#10161a}
.serverExpLoadingV229{min-height:390px;display:grid;place-items:center;text-align:center}
.serverExpLoadingV229 .pulse{width:54px;height:3px;background:#24343c;overflow:hidden;margin:15px auto 0;border-radius:2px}
.serverExpLoadingV229 .pulse i{display:block;width:40%;height:100%;background:#d4aa56;animation:serverLoadV229 .8s linear infinite}
@keyframes serverLoadV229{from{transform:translateX(-120%)}to{transform:translateX(350%)}}
.serverRewardLoadingV229{padding:24px;border:1px solid #33434c;border-radius:10px;background:#10191e;color:#8699a3}
@media(max-width:900px){.serverExpCardsV229{grid-template-columns:repeat(3,minmax(0,1fr))}.serverExpCardV229:nth-child(n+4){aspect-ratio:.72}}

/* === geohuntV230RestoreQaStyle === */
/* Restore the validated expedition presentation instead of V229's temporary cards. */
.serverExpV229,.serverExpCardsV229,.serverExpCardV229{display:none!important}
/* Keep the validated expedition footer on one line and aligned. */
body[data-geo-tab="drop"] .expeditionFooterV125{
 display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;
 min-height:48px!important;width:min(1500px,94vw)!important;margin:8px auto 0!important;padding:0 0 14px!important;box-sizing:border-box!important;
}
body[data-geo-tab="drop"] .expeditionFooterV125>span{margin-right:auto!important}
body[data-geo-tab="drop"] .expeditionFooterV125>button{height:40px!important;min-width:148px!important;margin:0!important}
@media(max-width:850px){body[data-geo-tab="drop"] .expeditionFooterV125{flex-wrap:wrap!important}body[data-geo-tab="drop"] .expeditionFooterV125>span{width:100%!important}}
/* Prevent filter controls from being visually stale after an in-place update. */
.collectionToolsV178 select,.collectionToolsV178 input,.codexToolsV186 select,.codexToolsV186 input{pointer-events:auto!important}

/* === geohuntV237MarketTradesPolish === */
/* V237 — market/trades visual cleanup */
.marketModes,
.exchangeBarV178>div,
.serverExpActionsV229,
.expeditionFooterV125,
.recapActionsV93{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:12px!important;
}

.marketModes button,
.exchangeBarV178 button,
.exchangeBarV178 span,
.serverExpActionsV229 button,
.expeditionFooterV125>button,
.recapActionsV93>button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  vertical-align:middle!important;
}

.serverExpActionsV229{
  width:100%!important;
  margin-top:18px!important;
}
.serverExpActionsV229 button{
  min-width:170px!important;
  min-height:44px!important;
  margin:0!important;
}

.expeditionFooterV125,
.recapActionsV93{
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.expeditionFooterV125>button,
.recapActionsV93>button{
  min-width:170px!important;
  min-height:44px!important;
  margin:0!important;
}

/* Dark empty states instead of big white blocks */
.marketEmpty,
.exchangeGridV178>.marketEmpty,
.orderGridV61>.marketEmpty,
.friendCollectionV39>.marketEmpty,
#addFriendResultsV228>.marketEmpty{
  grid-column:1 / -1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-direction:column!important;
  gap:8px!important;
  min-height:150px!important;
  padding:24px!important;
  text-align:center!important;
  background:
    linear-gradient(180deg,rgba(20,31,38,.94),rgba(14,23,29,.94))!important;
  border:1px dashed rgba(109,148,168,.35)!important;
  border-radius:16px!important;
  color:#9cb0ba!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 10px 30px rgba(0,0,0,.22)!important;
}
.marketEmpty b{
  color:#e7eef2!important;
  font-size:20px!important;
  line-height:1.2!important;
}
.marketEmpty span,
.marketEmpty small{
  color:#7f96a1!important;
  font-size:12px!important;
}

/* Section blocks on market/trades pages */
.exchangePageV42 .marketEmpty,
.myMarketV61 .marketEmpty,
.marketPageV21 .marketEmpty{
  background:
    radial-gradient(600px 180px at 100% 0,rgba(231,168,79,.08),transparent 55%),
    linear-gradient(180deg,rgba(19,29,35,.96),rgba(12,20,25,.96))!important;
}

.marketToolbar,
.exchangeBarV178,
.marketModes{
  overflow:visible!important;
}
.marketModes{
  gap:8px!important;
  padding:8px!important;
}
.marketModes button{
  min-height:44px!important;
  padding:0 18px!important;
  border-radius:12px!important;
}
.exchangeBarV178{
  min-height:72px!important;
  padding:14px 16px!important;
  gap:12px!important;
}
.exchangeBarV178 h2{
  display:flex!important;
  align-items:center!important;
  min-height:40px!important;
}
.exchangeBarV178>div{
  margin-left:auto!important;
}
.exchangeBarV178 span,
.exchangeBarV178 button{
  min-height:40px!important;
  padding:0 14px!important;
  border-radius:10px!important;
}

/* Remove any stray light theme fallback inside dark UI */
.huntApp .marketEmpty,
.huntApp .exchangeGridV178>.marketEmpty{
  background-color:#101920!important;
  color:#a7b8c0!important;
}

@media (max-width: 900px){
  .exchangeBarV178{
    align-items:flex-start!important;
  }
  .exchangeBarV178>div{
    width:100%!important;
    justify-content:flex-start!important;
    margin-left:0!important;
  }
  .serverExpActionsV229 button,
  .expeditionFooterV125>button,
  .recapActionsV93>button{
    flex:1 1 220px!important;
  }
}

/* === geohuntV203ExpeditionPremium === */
/* V203 — reveal premium, volontairement sans glow, cercle, halo ou particules */
.treasureCardV125,.expCardV125,.dropCardImpact,.revealCard{will-change:transform,opacity}
.treasureCardV125.revealed,.expCardV125.revealed{transition:none!important}
.dropExperience .dropFx,.rank5 .dropFx{display:none!important}
.dropCardImpact{box-shadow:0 18px 48px #0008!important}
.dropCardImpact,.photoStage{transform:translateZ(0)}
@media(prefers-reduced-motion:reduce){
 .treasureCardV125,.expCardV125,.dropCardImpact,.revealCard{will-change:auto}
}

/* === geohuntV231FluidQaStyle === */
/* Expedition end controls: always centered and evenly spaced. */
.expeditionFooterV125,
.recapActionsV93{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.expeditionFooterV125>button,
.recapActionsV93>button{
  min-width:150px!important;
  margin:0!important;
}

/* Local section updates must not flash like a page reload. */
.marketPageV21,.achievementsV156,.collectionPage{
  animation:none!important;
}
.achievement[data-ach-id-v231]{
  transition:border-color .08s linear,background-color .08s linear!important;
}
.achievement[data-ach-id-v231].claimedV231{
  opacity:.9;
}
.marketServerLoadingV231{
  padding:18px;border:1px solid #344751;border-radius:10px;background:#101a20;color:#90a1aa;
}

/* === geohuntV232EnergyFixStyle === */
/* Energy display updates in place; no replaceWith / no flicker. */
.expEnergyV147 .expPipsV147 i,
.expEnergyV147 #expChargesV147,
.expEnergyV147 #expTimerV147{
  transition:none!important;
}

/* === geohuntV234WishlistFixStyle === */
.wishlistV37 article[data-wishlist-v234]{animation:none!important}

/* === geohuntV236QaStyle === */
/* Navigation/pages: no fake page fade/refresh. Card/reveal animations are untouched. */
.huntMain,
.huntMain > section,
.marketPageV21,
.achievementsV156,
.profileV27,
.friendsPageV39,
.codexHeroV58,
.collectionShellV202{
  animation:none!important;
}
.huntMain{
  transition:none!important;
}
.ghQaStatusV236{
  position:fixed;
  left:-99999px;
  width:1px;height:1px;
  overflow:hidden;
}

/* === geohuntV238VisualFinish === */
/* ===== V238 — unified visual finish: Expedition / Market / Trades ===== */

/* ---------- Shared section rhythm ---------- */
.tab-market .huntMain,
.tab-trades .huntMain,
.tab-drop .huntMain{
  padding-top:14px!important;
}

/* ---------- Expedition: centered result actions ---------- */
body[data-geo-tab="drop"] .expeditionFooterV125,
body[data-geo-tab="drop"] .recapActionsV93,
body[data-geo-tab="drop"] .serverExpActionsV229,
.tab-drop .expeditionFooterV125,
.tab-drop .recapActionsV93,
.tab-drop .serverExpActionsV229{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  align-content:center!important;
  flex-wrap:wrap!important;
  gap:12px!important;
  width:100%!important;
  max-width:760px!important;
  margin:18px auto 0!important;
  padding:0!important;
}
body[data-geo-tab="drop"] .expeditionFooterV125>span,
.tab-drop .expeditionFooterV125>span{
  flex:0 0 100%!important;
  width:100%!important;
  margin:0 0 2px!important;
  text-align:center!important;
}
body[data-geo-tab="drop"] .expeditionFooterV125>button,
body[data-geo-tab="drop"] .recapActionsV93>button,
body[data-geo-tab="drop"] .serverExpActionsV229>button,
.tab-drop .expeditionFooterV125>button,
.tab-drop .recapActionsV93>button,
.tab-drop .serverExpActionsV229>button{
  flex:0 0 178px!important;
  width:178px!important;
  min-width:178px!important;
  max-width:178px!important;
  min-height:44px!important;
  height:44px!important;
  margin:0!important;
  padding:0 14px!important;
  display:inline-flex!important;
  justify-content:center!important;
  align-items:center!important;
  text-align:center!important;
  line-height:1!important;
  box-sizing:border-box!important;
}

/* ---------- Market header / tabs ---------- */
.tab-market .marketHero{
  margin-bottom:16px!important;
  padding:22px 26px!important;
}
.tab-market .marketModes{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  width:max-content!important;
  max-width:100%!important;
  padding:7px!important;
  margin:0 0 16px!important;
  border-radius:14px!important;
  background:rgba(13,20,24,.78)!important;
  border:1px solid rgba(116,145,160,.22)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18)!important;
}
.tab-market .marketModes button{
  height:44px!important;
  min-height:44px!important;
  padding:0 18px!important;
  margin:0!important;
  border-radius:10px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
}
.tab-market .marketToolbar,
.tab-market .marketToolsV111{
  display:grid!important;
  grid-template-columns:minmax(320px,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  margin:0 0 18px!important;
  padding:12px!important;
  border-radius:14px!important;
}
.tab-market .marketSearchSortV111{
  display:grid!important;
  grid-template-columns:minmax(230px,1fr) 190px!important;
  gap:9px!important;
  min-width:0!important;
}
.tab-market .marketSearchSortV111 input,
.tab-market .marketSearchSortV111 select{
  min-width:0!important;
  height:42px!important;
  box-sizing:border-box!important;
}
.tab-market .marketFilters{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:7px!important;
}
.tab-market .marketFilters button{
  height:38px!important;
  min-height:38px!important;
  padding:0 13px!important;
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* ---------- Market empty states: compact dark cards, never white ---------- */
.tab-market .marketEmpty,
.tab-trades .marketEmpty,
.huntApp .marketEmpty,
.exchangeGridV178>.marketEmpty,
.orderGridV61>.marketEmpty,
.myMarketV61 .marketEmpty{
  grid-column:1/-1!important;
  min-height:132px!important;
  padding:26px 28px!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  gap:7px!important;
  text-align:center!important;
  border-radius:14px!important;
  background:
    radial-gradient(500px 150px at 100% 0,rgba(216,170,80,.06),transparent 58%),
    linear-gradient(180deg,#121d23,#0d171c)!important;
  border:1px dashed rgba(106,137,152,.34)!important;
  color:#8298a3!important;
  box-shadow:inset 0 1px rgba(255,255,255,.035),0 10px 24px rgba(0,0,0,.18)!important;
}
.tab-market .marketEmpty b,
.tab-trades .marketEmpty b,
.huntApp .marketEmpty b{
  color:#dbe5e9!important;
  font-size:17px!important;
  line-height:1.2!important;
}
.tab-market .marketEmpty span,
.tab-market .marketEmpty small,
.tab-trades .marketEmpty span,
.tab-trades .marketEmpty small,
.huntApp .marketEmpty span,
.huntApp .marketEmpty small{
  color:#758b96!important;
  font-size:10px!important;
}

/* Mes annonces should not become giant blank sheets */
.tab-market .myMarketV61 h4{
  margin:18px 0 9px!important;
  font-size:10px!important;
  letter-spacing:.04em!important;
}
.tab-market .myMarketV61 .marketGrid,
.tab-market .myMarketV61 .orderGridV61{
  min-height:0!important;
}
.tab-market .myMarketV61 .marketEmpty{
  min-height:112px!important;
}

/* ---------- Trades header ---------- */
.tab-trades .exchangeBarV178,
.exchangePageV42 .exchangeBarV178{
  min-height:70px!important;
  height:auto!important;
  padding:13px 15px!important;
  display:grid!important;
  grid-template-columns:1fr auto!important;
  align-items:center!important;
  gap:14px!important;
  margin-bottom:12px!important;
  border-radius:14px!important;
}
.tab-trades .exchangeBarV178 h2,
.exchangePageV42 .exchangeBarV178 h2{
  margin:0!important;
  display:flex!important;
  align-items:center!important;
  min-height:42px!important;
}
.tab-trades .exchangeBarV178>div,
.exchangePageV42 .exchangeBarV178>div{
  display:flex!important;
  justify-content:flex-end!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.tab-trades .exchangeBarV178 span,
.exchangePageV42 .exchangeBarV178 span,
.tab-trades .exchangeBarV178 button,
.exchangePageV42 .exchangeBarV178 button{
  min-height:38px!important;
  height:38px!important;
  margin:0!important;
  padding:0 13px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:9px!important;
  box-sizing:border-box!important;
}

/* Trades empty state less tall */
.tab-trades .exchangeGridV178>.marketEmpty,
.exchangePageV42 .exchangeGridV178>.marketEmpty{
  min-height:120px!important;
}
.tab-trades .exchangeHistoryV178,
.exchangePageV42 .exchangeHistoryV178{
  margin-top:12px!important;
}

/* ---------- Consistent dark surfaces ---------- */
.tab-market .marketGrid,
.tab-trades .exchangeGridV178{
  align-items:start!important;
}
.tab-market .listing,
.tab-trades .exchangeCardV42{
  background:#0f191f!important;
  border-color:rgba(112,143,158,.23)!important;
}

/* ---------- Responsive ---------- */
@media(max-width:1100px){
  .tab-market .marketToolbar,
  .tab-market .marketToolsV111{
    grid-template-columns:1fr!important;
  }
  .tab-market .marketFilters{justify-content:flex-start!important}
}
@media(max-width:760px){
  .tab-market .marketSearchSortV111{grid-template-columns:1fr!important}
  .tab-trades .exchangeBarV178,
  .exchangePageV42 .exchangeBarV178{grid-template-columns:1fr!important}
  .tab-trades .exchangeBarV178>div,
  .exchangePageV42 .exchangeBarV178>div{justify-content:flex-start!important}
  body[data-geo-tab="drop"] .expeditionFooterV125>button,
  body[data-geo-tab="drop"] .recapActionsV93>button,
  body[data-geo-tab="drop"] .serverExpActionsV229>button,
  .tab-drop .expeditionFooterV125>button,
  .tab-drop .recapActionsV93>button,
  .tab-drop .serverExpActionsV229>button{
    flex:1 1 190px!important;
    width:auto!important;
    min-width:160px!important;
    max-width:none!important;
  }
}



/* === V241: Animations disabled really means disabled === */
html.ghMotionOffV241 *,
body.ghMotionOffV241 *,
body.reduceMotion *{
  animation:none!important;
  animation-name:none!important;
  animation-duration:0s!important;
  animation-delay:0s!important;
  transition:none!important;
  transition-duration:0s!important;
  transition-delay:0s!important;
  scroll-behavior:auto!important;
}
html.ghMotionOffV241 *::before,
html.ghMotionOffV241 *::after,
body.ghMotionOffV241 *::before,
body.ghMotionOffV241 *::after,
body.reduceMotion *::before,
body.reduceMotion *::after{
  animation:none!important;
  animation-name:none!important;
  transition:none!important;
}
body.ghMotionOffV241 .flightStars,
body.ghMotionOffV241 .radarV125 i,
body.ghMotionOffV241 .radarV125 span,
body.ghMotionOffV241 .dropFx,
body.ghMotionOffV241 #expRevealFxV194{
  animation:none!important;
}

/* === V242 Carnets integrity === */
.carnetAuditV242{
  margin-top:10px!important;
  padding:9px 11px!important;
  border:1px solid #405762!important;
  border-radius:9px!important;
  background:#101b20!important;
  color:#9fb0b8!important;
  font-size:10px!important;
  line-height:1.45!important;
}
.carnetAuditV242 b{color:#f0b56a!important}

/* === V243 Stable IDs === */
.stableIdV243{margin:0 0 10px;padding:7px 9px;border:1px solid #334a55;border-radius:7px;background:#101a20;color:#8298a2;font-size:9px}


/* === V248 — VIP information === */
.vipPackInfoV248{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
}
.vipBenefitsV248{display:grid;gap:10px;margin:14px 0}
.vipBenefitV248{
  display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;
  padding:11px 12px;border:1px solid #654f67;border-radius:10px;
  background:#17151c;color:#dcd4df;
}
.vipBenefitV248>span{
  display:flex;align-items:center;justify-content:center;
  width:34px;height:34px;border:1px solid #745776;border-radius:9px;
  background:#231b27;color:#efb9eb;font-size:16px
}
.vipBenefitV248 b{display:block;color:#fff;font-size:11px;margin-bottom:3px}
.vipBenefitV248 p{margin:0;color:#b7aeb9;font-size:9px;line-height:1.45}
.vipBenefitV248 small{display:block;margin-top:5px;color:#837985;font-size:8px;line-height:1.4}
.vipBenefitV248.compactV248{padding:8px 9px;grid-template-columns:28px 1fr}
.vipBenefitV248.compactV248>span{width:28px;height:28px;font-size:13px}
.vipBenefitV248.compactV248 b{font-size:9px}
.vipBenefitV248.compactV248 p{font-size:8px}
.vipPackInfoV248 .compactListV248{margin:12px 0 9px}
.vipLearnMoreV248{
  margin:0 0 5px!important;background:transparent!important;border:1px solid #76577b!important;
  color:#e2b5e0!important;box-shadow:none!important
}
.vipLearnMoreV248:hover{background:#241a27!important;border-color:#b26fb4!important}
.vipInfoOverlayV248{
  position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;
  padding:24px;background:#05080bd9
}
.vipInfoPanelV248{
  position:relative;width:min(720px,96vw);max-height:90vh;overflow:auto;
  padding:26px;border:1px solid #76577a;border-radius:18px;
  background:linear-gradient(145deg,#25182a,#151923 58%,#2a2018);
  box-shadow:0 30px 90px #000b,inset 0 1px #ffffff12
}
.vipInfoCloseV248{
  position:absolute;right:14px;top:14px;width:34px;height:34px;border-radius:9px;
  background:#15161c;border:1px solid #514054;color:#fff;font-size:18px;cursor:pointer
}
.vipInfoHeadV248 small{font:900 8px monospace;letter-spacing:.18em;color:#d38dce}
.vipInfoHeadV248 h2{margin:7px 0 5px;font-size:28px;color:#fff}
.vipInfoHeadV248 p{margin:0;color:#a99eaa;font-size:11px}
.vipInfoPanelV248 .vipBenefitsV248{grid-template-columns:1fr;gap:10px;margin:20px 0}
.vipInfoPriceV248{
  display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:15px;border:1px solid #59465b;border-radius:12px;background:#11161c
}
.vipInfoPriceV248>div{display:flex;align-items:baseline;gap:8px}
.vipInfoPriceV248 strong{font-size:25px;color:#f0bb67}.vipInfoPriceV248 span{color:#928b91;font-size:10px}
.vipInfoPriceV248 p{margin:0;color:#948b96;font-size:9px;text-align:right}
.vipInfoActionsV248{display:flex;justify-content:flex-end;gap:9px;margin-top:15px}
.vipInfoActionsV248 button,.vipLockedV248 button{
  min-height:40px;padding:0 15px;border-radius:8px;border:1px solid #4b4550;
  background:#1c1d22;color:#dcdce0;font-size:9px;font-weight:900;cursor:pointer
}
.vipInfoActionsV248 .primary{
  background:linear-gradient(180deg,#713b71,#492b55);border-color:#bb68bc;color:#fff
}
.vipLockedV248 button{margin-top:8px;border-color:#725c32;background:#201c13;color:#e9bd67}
@media(max-width:650px){
  .vipInfoPanelV248{padding:20px 15px}.vipInfoHeadV248 h2{font-size:22px}
  .vipInfoPriceV248{align-items:flex-start;flex-direction:column}.vipInfoPriceV248 p{text-align:left}
  .vipInfoActionsV248{flex-direction:column}.vipInfoActionsV248 button{width:100%}
}


/* === V249 — compact/equal VIP shop card === */
.geoPacks{
  align-items:stretch!important;
}
.geoPacks>.geoPack{
  min-height:300px!important;
  height:auto!important;
  display:flex!important;
  flex-direction:column!important;
}
.geoPacks>.geoPack>button:last-of-type{
  margin-top:auto!important;
}
.vipPackV249{
  padding:20px!important;
}
.vipPackV249 h3{
  margin:10px 0 4px!important;
}
.vipSummaryV249{
  min-height:32px!important;
  margin:0 0 11px!important;
  color:#b7aebb!important;
  font-size:9px!important;
  line-height:1.45!important;
}
.vipMiniBenefitsV249{
  list-style:none!important;
  padding:0!important;
  margin:0 0 10px!important;
  display:grid!important;
  gap:6px!important;
}
.vipMiniBenefitsV249 li{
  min-height:32px!important;
  display:grid!important;
  grid-template-columns:24px auto 1fr!important;
  align-items:center!important;
  gap:7px!important;
  padding:5px 8px!important;
  border:1px solid #5d485f!important;
  border-radius:8px!important;
  background:#18151c!important;
}
.vipMiniBenefitsV249 li>span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:24px!important;
  height:24px!important;
  border:1px solid #6f5472!important;
  border-radius:6px!important;
  color:#e8afe5!important;
  font-size:11px!important;
}
.vipMiniBenefitsV249 li>b{
  color:#eee8ef!important;
  font-size:8px!important;
  white-space:nowrap!important;
}
.vipMiniBenefitsV249 li>small{
  color:#8f8491!important;
  font-size:7px!important;
  text-align:right!important;
}
.vipLearnMoreV249{
  min-height:32px!important;
  margin:0 0 10px!important;
  padding:0 10px!important;
  background:transparent!important;
  border:1px solid #715674!important;
  color:#dfb2dd!important;
  box-shadow:none!important;
}
.geoPackBottomV249{
  margin-top:auto!important;
  display:grid!important;
  gap:9px!important;
}
.vipPriceCompactV249{
  color:#f1b34e!important;
  font-size:22px!important;
}
.vipPriceCompactV249 small{
  color:#a49ba5!important;
  font-size:8px!important;
  font-weight:600!important;
}
.geoPackBottomV249>button{
  width:100%!important;
  min-height:42px!important;
}
@media(max-width:700px){
  .geoPacks>.geoPack{min-height:0!important}
  .vipMiniBenefitsV249 li{grid-template-columns:24px 1fr!important}
  .vipMiniBenefitsV249 li>small{grid-column:2;text-align:left!important}
}


/* === V250 — boutique compacte et alignée === */
.geoPacksV250{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
  align-items:stretch!important;
}
.geoPacksV250>.geoPack{
  min-height:310px!important;
  height:310px!important;
  padding:20px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  overflow:hidden!important;
}
.packHeadV250{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  min-height:62px!important;
}
.packHeadV250 small{
  display:block!important;
  margin-bottom:8px!important;
}
.packHeadV250 h3{
  margin:0!important;
  font-size:24px!important;
  line-height:1.05!important;
}
.packHeadV250 em{
  flex:0 0 auto!important;
}
.packDescV250{
  margin:12px 0 14px!important;
  min-height:34px!important;
  color:#b8bec1!important;
  font-size:10px!important;
  line-height:1.45!important;
}
.packSpacerV250{
  flex:1 1 auto!important;
}
.vipBenefitsLineV250{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:7px!important;
  margin:0 0 10px!important;
}
.vipBenefitsLineV250>span{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:center!important;
  min-height:52px!important;
  padding:9px 10px!important;
  border:1px solid #604d63!important;
  border-radius:9px!important;
  background:#18161b!important;
}
.vipBenefitsLineV250 b{
  color:#f0e8f1!important;
  font-size:9px!important;
  line-height:1.2!important;
}
.vipBenefitsLineV250 small{
  margin-top:3px!important;
  color:#8e858f!important;
  font-size:7px!important;
}
.packSecondaryV250{
  min-height:34px!important;
  margin:0 0 10px!important;
  background:transparent!important;
  border:1px solid #705875!important;
  color:#dfb3dd!important;
  box-shadow:none!important;
}
.packFooterV250{
  margin-top:auto!important;
  display:grid!important;
  gap:11px!important;
}
.packPriceV250{
  display:flex!important;
  align-items:baseline!important;
  gap:7px!important;
  min-height:30px!important;
}
.packPriceV250 b{
  color:#f0ae42!important;
  font-size:22px!important;
  line-height:1!important;
}
.packPriceV250 small{
  color:#9ca4a8!important;
  font-size:8px!important;
}
.packCtaV250{
  width:100%!important;
  min-height:42px!important;
  margin:0!important;
}
@media(max-width:1100px){
  .geoPacksV250{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:700px){
  .geoPacksV250{grid-template-columns:1fr!important}
  .geoPacksV250>.geoPack{height:auto!important;min-height:280px!important}
  .vipBenefitsLineV250{grid-template-columns:1fr!important}
  .vipBenefitsLineV250>span{min-height:42px!important}
}


/* === V251 — boutique: prix clairement au-dessus du bouton === */
.geoPacksV250>.geoPack{
  min-height:340px!important;
  height:340px!important;
}
.packDescV250{
  margin:10px 0 10px!important;
  min-height:28px!important;
}
.vipBenefitsLineV250{
  gap:6px!important;
  margin:0 0 8px!important;
}
.vipBenefitsLineV250>span{
  min-height:46px!important;
  padding:8px 9px!important;
}
.packSecondaryV250{
  min-height:32px!important;
  margin:0 0 8px!important;
}
.packFooterV250{
  margin-top:auto!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
.packPriceV250{
  order:1!important;
  width:100%!important;
  justify-content:flex-start!important;
  margin:0!important;
}
.packCtaV250{
  order:2!important;
  width:100%!important;
  min-height:40px!important;
}
@media(max-width:700px){
  .geoPacksV250>.geoPack{height:auto!important;min-height:310px!important}
}
