/* KORZH v484 — universal modal close + premium neutral prices + soft case hover + no-flash result selling */
:root[data-visual-style="2040"]{
  --k484-ease:cubic-bezier(.22,.78,.24,1);
  --k484-ease-soft:cubic-bezier(.2,.8,.2,1);
  --k484-line:rgba(255,248,243,.095);
  --k484-line-hover:rgba(255,248,243,.145);
  --k484-panel:#111014;
  --k484-panel-2:#171418;
  --k484-text:#fff7f1;
  --k484-muted:rgba(255,247,241,.48);
}

/* Universal body-level overlays. No local red/brown fill, no sideways centering. */
:root[data-visual-style="2040"] :is(
  #profilePrimaryModalPortal .profile-v81-overlay,
  #profilePrimaryModalPortal .exchange-overlay,
  #profileExchangePortal .exchange-overlay,
  #depositPortal .deposit-mini-overlay,
  #depositPortal .k482-deposit-overlay
){
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  margin:0!important;
  padding:24px!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
  background:rgba(6,5,7,.68)!important;
  backdrop-filter:blur(10px)!important;
  -webkit-backdrop-filter:blur(10px)!important;
  z-index:2147483500!important;
}

/* One close button language for every 2040 modal. */
:root[data-visual-style="2040"] .k484-modal-close,
:root[data-visual-style="2040"] #depositPortal .k482-deposit-close.k484-modal-close{
  position:absolute!important;
  top:14px!important;
  right:14px!important;
  left:auto!important;
  bottom:auto!important;
  z-index:2147483600!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  min-height:38px!important;
  margin:0!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:12px!important;
  background:rgba(20,18,21,.96)!important;
  color:#eee4de!important;
  box-shadow:inset 0 1px rgba(255,255,255,.045),0 8px 22px rgba(0,0,0,.20)!important;
  font:500 22px/1 Arial,sans-serif!important;
  transform:none!important;
  transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s var(--k484-ease)!important;
}
:root[data-visual-style="2040"] .k484-modal-close:hover,
:root[data-visual-style="2040"] #depositPortal .k482-deposit-close.k484-modal-close:hover{
  background:rgba(31,27,31,.98)!important;
  border-color:rgba(255,255,255,.17)!important;
  color:#fff!important;
  transform:translateY(-1px)!important;
}
:root[data-visual-style="2040"] .k484-modal-close:active{transform:translateY(0)!important}

/* Deposit: explicit visible promo, only country flags, compact luxury header. */
:root[data-visual-style="2040"] #depositPortal .k482-deposit-modal{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(255,255,255,.085)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.012),transparent 24%),#0d0e13!important;
  box-shadow:0 34px 110px rgba(0,0,0,.50),inset 0 1px rgba(255,255,255,.025)!important;
}
:root[data-visual-style="2040"] #depositPortal .k482-deposit-head{
  padding:19px 66px 17px 22px!important;
  min-height:92px!important;
  display:grid!important;
  grid-template-columns:minmax(180px,.58fr) minmax(330px,1fr)!important;
  align-items:center!important;
  gap:22px!important;
  border-bottom:1px solid rgba(255,255,255,.055)!important;
  background:rgba(255,255,255,.008)!important;
}
:root[data-visual-style="2040"] #depositPortal .k482-deposit-promo{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 112px auto!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
}
:root[data-visual-style="2040"] #depositPortal .k482-deposit-promo input{
  width:100%!important;
  min-width:0!important;
  height:40px!important;
  border:1px solid rgba(255,255,255,.075)!important;
  background:#090b10!important;
  box-shadow:inset 0 1px rgba(255,255,255,.02)!important;
}
:root[data-visual-style="2040"] #depositPortal .k482-deposit-promo button{
  height:40px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.035)!important;
  color:#eee0d7!important;
}
:root[data-visual-style="2040"] #depositPortal .k482-country-row{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:9px!important;
}
:root[data-visual-style="2040"] #depositPortal .k482-country-row>button{
  width:58px!important;
  min-width:58px!important;
  max-width:58px!important;
  height:44px!important;
  min-height:44px!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  border-radius:12px!important;
  border:1px solid rgba(255,255,255,.065)!important;
  background:rgba(255,255,255,.018)!important;
  transform:none!important;
}
:root[data-visual-style="2040"] #depositPortal .k482-country-row>button.active{
  border-color:rgba(255,255,255,.13)!important;
  background:rgba(255,255,255,.045)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.035)!important;
}
:root[data-visual-style="2040"] #depositPortal .k482-country-row img{
  width:28px!important;
  height:19px!important;
  border-radius:5px!important;
  object-fit:cover!important;
  display:block!important;
}
:root[data-visual-style="2040"] .sr-only{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}

/* Top drops: no separate title slab; clean centered heading in the same modal surface. */
:root[data-visual-style="2040"] #profilePrimaryModalPortal .k414-topdrops-modal{
  position:relative!important;
  padding:0 0 14px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.012),transparent 20%),rgba(15,13,15,.985)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:24px!important;
  overflow:hidden!important;
}
:root[data-visual-style="2040"] #profilePrimaryModalPortal .k484-topdrops-heading{
  margin:0!important;
  padding:24px 64px 16px!important;
  text-align:center!important;
  color:#fff5ee!important;
  font-size:22px!important;
  line-height:1!important;
  letter-spacing:.025em!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
:root[data-visual-style="2040"] #profilePrimaryModalPortal .k414-topdrops-list{
  height:calc(100% - 62px)!important;
  max-height:none!important;
  padding:4px 14px 14px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  scroll-behavior:smooth!important;
  overscroll-behavior:contain!important;
}
:root[data-visual-style="2040"] #profilePrimaryModalPortal .k414-topdrop-row{
  transition:transform .17s var(--k484-ease),background-color .17s ease,border-color .17s ease,opacity .17s ease!important;
}
:root[data-visual-style="2040"] #profilePrimaryModalPortal .k414-topdrop-row:hover{
  transform:translateY(-1px)!important;
  background:rgba(255,255,255,.022)!important;
  border-color:rgba(255,255,255,.085)!important;
}

/* Sell all + exchange: guaranteed neutral centered surfaces and visible X. */
:root[data-visual-style="2040"] #profilePrimaryModalPortal .sell-all-modal,
:root[data-visual-style="2040"] #profileExchangePortal .exchange-modal{
  position:relative!important;
  left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
  transform:none!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.014),transparent 26%),rgba(15,13,15,.985)!important;
  box-shadow:0 34px 110px rgba(0,0,0,.50),inset 0 1px rgba(255,255,255,.025)!important;
}
:root[data-visual-style="2040"] #profileExchangePortal .exchange-v109-head{
  padding-right:54px!important;
  background:transparent!important;
  box-shadow:none!important;
}
:root[data-visual-style="2040"] #profileExchangePortal .exchange-target-grid-v109{
  padding-top:12px!important;
  scroll-padding-top:12px!important;
}
:root[data-visual-style="2040"] #profileExchangePortal .exchange-v109-card{
  transform:none!important;
  transition:transform .17s var(--k484-ease),box-shadow .17s ease,border-color .17s ease,background-color .17s ease!important;
}
:root[data-visual-style="2040"] #profileExchangePortal .exchange-v109-card:hover{
  transform:translateY(-2px)!important;
  z-index:8!important;
}

/* New case price component: one neutral premium capsule, no collection accents at all. */
:root[data-visual-style="2040"] body .page-cases :is(
  .case-price-premium,
  .case-price-tag.case-price-premium,
  .case-price-tag.case-price-centered,
  .case-card>.case-price-tag,
  .k220-oscar-price,
  .k221-oscar-price,
  .k449-chick-pick-price,
  .starter-case-card .case-price,
  .starter-case-card .case-card-price,
  .lowkey-case-card .case-price
){
  box-sizing:border-box!important;
  width:auto!important;
  min-width:90px!important;
  max-width:none!important;
  height:34px!important;
  min-height:34px!important;
  max-height:34px!important;
  margin:9px auto 0!important;
  padding:0 13px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  outline:0!important;
  border-radius:11px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.060),rgba(255,255,255,.012) 42%),linear-gradient(180deg,#211d1d,#121113)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.055),inset 0 -1px rgba(0,0,0,.28),0 7px 18px rgba(0,0,0,.18)!important;
  color:#fff6ef!important;
  filter:none!important;
  text-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  overflow:hidden!important;
  white-space:nowrap!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s var(--k484-ease)!important;
}
:root[data-visual-style="2040"] body .page-cases :is(
  .case-price-premium,.case-price-tag,.k220-oscar-price,.k221-oscar-price,.k449-chick-pick-price,
  .starter-case-card .case-price,.starter-case-card .case-card-price,.lowkey-case-card .case-price
)::before,
:root[data-visual-style="2040"] body .page-cases :is(
  .case-price-premium,.case-price-tag,.k220-oscar-price,.k221-oscar-price,.k449-chick-pick-price,
  .starter-case-card .case-price,.starter-case-card .case-card-price,.lowkey-case-card .case-price
)::after{
  content:none!important;display:none!important;border:0!important;box-shadow:none!important;background:none!important;
}
:root[data-visual-style="2040"] body .page-cases :is(
  .case-card,.k220-oscar-card,.k221-oscar-tile,.k449-chick-pick-tile,.starter-case-card,.lowkey-case-card
):is(:hover,:focus-visible,:active) :is(
  .case-price-premium,.case-price-tag,.k220-oscar-price,.k221-oscar-price,.k449-chick-pick-price,.case-price,.case-card-price
){
  border-color:rgba(255,255,255,.14)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.015) 42%),linear-gradient(180deg,#252020,#141214)!important;
  box-shadow:inset 0 1px rgba(255,255,255,.065),0 9px 20px rgba(0,0,0,.20)!important;
  transform:translateY(-1px)!important;
}
:root[data-visual-style="2040"] body .page-cases :is(
  .case-price-premium,.case-price-tag,.k220-oscar-price,.k221-oscar-price,.k449-chick-pick-price,.case-price,.case-card-price
) :is(.case-price-value,.korzh-money,.korzh-money-number,.korzh-currency-symbol){
  color:#fff5ee!important;
  text-shadow:none!important;
  font-weight:850!important;
  line-height:1!important;
}
:root[data-visual-style="2040"] body .page-cases :is(.k221-oscar-price,.k449-chick-pick-price) :is(.case-price-value,.korzh-money,.korzh-money-number){font-size:14px!important}

/* Case hover should feel physical, never zoom like a browser bug. */
:root[data-visual-style="2040"][data-theme="hub"] .page-cases :is(
  .case-card,
  .k220-oscar-card,
  .k221-oscar-tile,
  .k449-chick-pick-tile,
  .starter-case-card,
  .lowkey-case-card
){
  transition:transform .20s var(--k484-ease-soft),filter .20s ease,box-shadow .20s ease,opacity .20s ease!important;
  will-change:transform!important;
}
:root[data-visual-style="2040"][data-theme="hub"] .page-cases :is(
  .case-card,
  .k220-oscar-card,
  .k221-oscar-tile,
  .k449-chick-pick-tile,
  .starter-case-card,
  .lowkey-case-card
):hover{
  transform:translateY(-2px)!important;
  scale:1!important;
  filter:brightness(1.015)!important;
}
:root[data-visual-style="2040"][data-theme="hub"] .page-cases :is(
  .case-card,
  .k220-oscar-card,
  .k221-oscar-tile,
  .k449-chick-pick-tile,
  .starter-case-card,
  .lowkey-case-card
):active{
  transform:translateY(0)!important;
  scale:1!important;
}

/* Case result/sell: local card exit, no entire-case flash. */
:root[data-visual-style="2040"] .case-results-v167,
:root[data-visual-style="2040"] .case-result-board-v167,
:root[data-visual-style="2040"] .case-result-card-v167,
:root[data-visual-style="2040"] .case-result-actions-v166,
:root[data-visual-style="2040"] .case-page-stage,
:root[data-visual-style="2040"] .case-page-actions{
  transition:opacity .18s var(--k484-ease),transform .18s var(--k484-ease),filter .18s ease!important;
}
:root[data-visual-style="2040"] .case-result-card-v167.k484-result-selling{
  opacity:0!important;
  transform:translateY(5px) scale(.985)!important;
  pointer-events:none!important;
}
:root[data-visual-style="2040"] .k484-result-shell-exit{
  opacity:0!important;
  transform:translateY(5px)!important;
  pointer-events:none!important;
}
:root[data-visual-style="2040"] .case-result-card-v167:hover{
  transform:translateY(-2px)!important;
}

/* Inputs stay neutral; Chrome focus/autofill cannot leave a blue slab. */
:root[data-visual-style="2040"] :is(input[type="search"],input[id*="Search"],input[placeholder*="поиск" i],input[placeholder*="найти" i]){
  outline:none!important;
  -webkit-tap-highlight-color:transparent!important;
  caret-color:#e8b08c!important;
}
:root[data-visual-style="2040"] :is(input[type="search"],input[id*="Search"],input[placeholder*="поиск" i],input[placeholder*="найти" i]):focus{
  outline:none!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.055)!important;
  background-color:#090c11!important;
}
:root[data-visual-style="2040"] input:-webkit-autofill,
:root[data-visual-style="2040"] input:-webkit-autofill:focus{
  -webkit-text-fill-color:#f3e9e2!important;
  -webkit-box-shadow:0 0 0 1000px #090c11 inset!important;
  transition:background-color 9999s ease-out 0s!important;
}

@media(max-width:900px){
  :root[data-visual-style="2040"] #depositPortal .k482-deposit-head{grid-template-columns:1fr!important;gap:12px!important;padding-right:60px!important}
  :root[data-visual-style="2040"] #depositPortal .k482-deposit-promo{grid-template-columns:minmax(0,1fr) 104px auto!important}
}
