/* Steam inventory value checker — rebuilt from skincash.gg/tools/inventory-value */

.iv-page { position: relative; width: 100%; overflow-x: hidden }
.iv-page *, .iv-page *::before, .iv-page *::after { box-sizing: border-box }
.iv-bg { position: absolute; left: 0; right: 0; top: 0; z-index: 0; height: 800px; overflow: hidden; pointer-events: none }
.iv-bg i {
  position: absolute; display: block; border-radius: 9999px;
}
.iv-bg i:nth-child(1) { left: 50%; top: -128px; width: 700px; height: 700px; transform: translateX(-50%); opacity: .3; filter: blur(120px); background: radial-gradient(circle, hsla(150, 84%, 42%, .45) 0%, transparent 70%) }
.iv-bg i:nth-child(2) { left: 12%; top: 128px; width: 300px; height: 300px; opacity: .2; filter: blur(100px); background: hsla(190, 90%, 50%, .6) }
.iv-bg i:nth-child(3) { right: 8%; top: 80px; width: 400px; height: 400px; opacity: .15; filter: blur(120px); background: hsla(42, 96%, 56%, .7) }
.iv-bg i:nth-child(4) {
  inset: 0; width: auto; height: auto; border-radius: 0; opacity: .04;
  background-image: linear-gradient(rgba(255, 255, 255, .5) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .5) 1px, transparent 1px);
  background-size: 64px 64px;
}
.iv-content { position: relative; z-index: 10; width: 100%; max-width: var(--content-width, 1792px); margin: 0 auto; padding: 48px 64px 96px }

/* ---- hero ---- */
.iv-hero { position: relative; display: grid; grid-template-columns: 1fr 420px; align-items: center; gap: 40px; margin-bottom: 56px }
.iv-title { margin: 0; font-size: 60px; font-weight: 800; letter-spacing: -.025em; line-height: 1.05 }
.iv-gradient-text {
  display: block;
  background: linear-gradient(110deg, #fff 0%, #fff 50%, hsla(150, 84%, 60%, 1) 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.iv-title-game { display: block; margin-top: 4px; color: #3dff9e; font-size: 48px }
.iv-lead { max-width: 576px; margin: 20px 0 0; color: rgba(255, 255, 255, .65); font-size: 15px; line-height: 1.625 }

.iv-games { display: flex; align-items: center; gap: 8px; margin-top: 28px }
.iv-game {
  position: relative; display: flex; align-items: center; gap: 8px;
  border: 1px solid rgba(61, 255, 158, .4); border-radius: 8px; padding: 10px 20px;
  background: rgba(61, 255, 158, .15); color: #3dff9e; font-family: inherit;
  font-size: 14px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase;
  box-shadow: 0 0 24px -8px rgba(34, 197, 94, .6);
}
.iv-game::after { content: ''; position: absolute; inset: -1px; border-radius: 8px; box-shadow: inset 0 0 0 1px rgba(61, 255, 158, .3); pointer-events: none }
.iv-game i { display: block; width: 6px; height: 6px; border-radius: 9999px; background: #3dff9e; box-shadow: 0 0 8px rgba(34, 197, 94, .8) }
.iv-soon { padding: 0 8px; color: rgba(255, 255, 255, .3); font-size: 10px; letter-spacing: .18em; text-transform: uppercase }

.iv-form { display: flex; gap: 8px; margin-top: 20px }
.iv-field { position: relative; flex: 1 }
.iv-field > svg { position: absolute; left: 16px; top: 50%; width: 16px; height: 16px; transform: translateY(-50%); color: rgba(255, 255, 255, .4); pointer-events: none }
.iv-input {
  width: 100%; height: 55px;
  border: 1px solid rgba(255, 255, 255, .1); border-radius: 12px; padding: 16px 16px 16px 44px;
  background: #0e1014; color: #fff; font-family: inherit; font-size: 14px; outline: none;
  transition: border-color .2s, box-shadow .2s;
}
.iv-input::placeholder { color: rgba(255, 255, 255, .35) }
.iv-input:focus { border-color: rgba(61, 255, 158, .5) !important; box-shadow: 0 0 0 3px rgba(34, 197, 94, .12) !important }
.iv-submit {
  position: relative; display: inline-flex; height: 55px; flex: none;
  align-items: center; justify-content: center; gap: 8px; overflow: hidden;
  border: 0; border-radius: 12px; padding: 16px 28px; background: #3dff9e; color: #000;
  font-family: inherit; font-size: 14px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase;
  box-shadow: 0 8px 30px -8px rgba(34, 197, 94, .7); cursor: pointer; transition: box-shadow .2s, transform .1s;
}
.iv-submit svg { position: relative; width: 16px; height: 16px }
.iv-submit span { position: relative }
.iv-submit i {
  position: absolute; inset: 0; transform: translateX(-100%); pointer-events: none;
  background: linear-gradient(to right, transparent, rgba(255, 255, 255, .3), transparent); transition: transform .7s;
}
.iv-submit:hover i { transform: translateX(100%) }
.iv-submit:hover { box-shadow: 0 12px 40px -8px rgba(34, 197, 94, .9) }
.iv-submit:active { transform: scale(.98) }
.iv-submit:disabled { opacity: .6; cursor: progress }
@keyframes iv-spin { to { transform: rotate(360deg) } }
.iv-spinner { animation: iv-spin 1s linear infinite }

.iv-error { margin: 8px 0 0; color: #f87171; font-size: 12px }
.iv-trust { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; margin-top: 24px; color: rgba(255, 255, 255, .45); font-size: 11px }
.iv-trust span { display: flex; align-items: center; gap: 6px }
.iv-trust svg { width: 14px; height: 14px }
.iv-trust span:nth-child(1) svg { color: rgba(61, 255, 158, .8) }
.iv-trust span:nth-child(2) svg { color: rgba(251, 191, 36, .8) }
.iv-trust span:nth-child(3) svg { color: rgba(34, 211, 238, .8) }

/* ---- hero showcase ---- */
.iv-showcase { position: relative; height: 420px }
.iv-showcase::after {
  content: ''; position: absolute; left: 50%; top: 50%; z-index: -1; width: 280px; height: 280px;
  transform: translate(-50%, -50%); border-radius: 9999px;
  background: radial-gradient(circle, hsla(150, 84%, 42%, .25) 0%, transparent 65%);
}
@keyframes iv-levitate {
  0%, 100% { transform: rotate(var(--rot, 0deg)) translateY(0) }
  50% { transform: rotate(var(--rot, 0deg)) translateY(-14px) }
}
.iv-float {
  position: absolute; overflow: hidden; border: 1px solid rgba(255, 255, 255, .08); border-radius: 16px;
  box-shadow: 0 18px 50px -15px rgba(0, 0, 0, .7); z-index: 1;
  transform: rotate(var(--rot, 0deg));
  animation: iv-levitate var(--float-duration, 6s) ease-in-out var(--float-delay, 0s) infinite;
}
.iv-float-tint { position: absolute; inset: 0; background: linear-gradient(165deg, hsla(var(--accent), .10) 0%, hsla(var(--accent), .22) 50%, hsla(var(--accent), .40) 100%) }
.iv-float-shade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0, 0, 0, .7), transparent 50%, rgba(0, 0, 0, .2)) }
.iv-float-accent { position: absolute; left: 0; right: 0; bottom: 0; height: 3px; background: hsl(var(--accent)) }
.iv-float-watermark { position: absolute; left: 50%; top: 50%; z-index: 1; opacity: .3; transform: translate(-50%, -55%) rotate(-12deg); pointer-events: none }
.iv-float-body { position: relative; z-index: 10; display: flex; height: 100%; flex-direction: column }
.iv-float-image { display: flex; flex: 1; align-items: center; justify-content: center; padding: 12px 12px 4px }
.iv-float-image img { width: 100%; height: auto; object-fit: contain; filter: drop-shadow(0 4px 12px rgba(0, 0, 0, .5)) }
.iv-float-foot { padding: 0 10px 10px }
.iv-float-name { overflow: hidden; color: rgba(255, 255, 255, .9); font-weight: 800; line-height: 1.15; letter-spacing: -.02em; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap }
.iv-float-price { display: flex; align-items: baseline; gap: 2px; margin-top: 2px; line-height: 1 }
.iv-float-price b { color: #3dff9e; font-weight: 800 }
.iv-float-price span { color: #fff; font-weight: 800; font-variant-numeric: tabular-nums }
.iv-float-logo {
  position: absolute; display: flex; align-items: center; justify-content: center;
  transform: rotate(var(--rot, 0deg));
  animation: iv-levitate var(--float-duration, 6s) ease-in-out var(--float-delay, 0s) infinite;
  border: 1px solid rgba(255, 255, 255, .1); border-radius: 16px;
  background: linear-gradient(to bottom right, #1a1d22, #0e1014);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, .5);
}
.iv-float-logo img { width: 126px; height: auto; opacity: .8 }

/* ---- stat band ---- */
.iv-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 56px }
.iv-stat {
  position: relative; overflow: hidden; border: 1px solid rgba(255, 255, 255, .06); border-radius: 12px;
  transition: border-color .3s;
}
.iv-stat:hover { border-color: hsla(var(--accent), .4) }
.iv-stat-bg { position: absolute; inset: 0; background: linear-gradient(135deg, #14161a 0%, #0e1014 60%, hsla(var(--accent), .08) 100%) }
.iv-stat-blob {
  position: absolute; right: -48px; top: -48px; width: 128px; height: 128px; border-radius: 9999px;
  background: hsla(var(--accent), .6); filter: blur(48px); opacity: .2; transition: opacity .3s;
}
.iv-stat:hover .iv-stat-blob { opacity: .4 }
.iv-stat-row { position: relative; z-index: 10; display: flex; align-items: center; justify-content: space-between; padding: 16px 20px }
.iv-stat-value { color: #fff; font-size: 24px; font-weight: 800; font-variant-numeric: tabular-nums; letter-spacing: -.025em }
.iv-stat-label { margin-top: 4px; color: rgba(255, 255, 255, .4); font-size: 10px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase }
.iv-stat-icon {
  display: flex; width: 40px; height: 40px; align-items: center; justify-content: center;
  border: 1px solid hsla(var(--accent), .3); border-radius: 8px; background: hsla(var(--accent), .12); color: hsl(var(--accent));
}
.iv-stat-icon svg { width: 20px; height: 20px }

/* ---- result layout ---- */
.iv-result { display: grid; grid-template-columns: 320px 1fr; gap: 24px; align-items: start }
.iv-side { position: sticky; top: 96px; align-self: start }
.iv-profile {
  position: relative; overflow: hidden; border: 1px solid rgba(61, 255, 158, .2); border-radius: 16px; padding: 24px;
  background: linear-gradient(to bottom right, #0e1411, #10141c, #0a0d0c);
}
.iv-profile-glow { position: absolute; right: -96px; top: -96px; width: 224px; height: 224px; border-radius: 9999px; background: hsla(150, 84%, 42%, .6); filter: blur(100px); opacity: .3; pointer-events: none }
.iv-profile-line { position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: linear-gradient(90deg, transparent, hsl(150, 84%, 42%), transparent) }
.iv-profile-body { position: relative; z-index: 10; display: flex; flex-direction: column; align-items: center; text-align: center }
.iv-avatar-wrap { position: relative }
.iv-avatar-wrap::before { content: ''; position: absolute; inset: -4px; border-radius: 16px; background: rgba(61, 255, 158, .3); filter: blur(12px) }
.iv-avatar { position: relative; width: 88px; height: 88px; border-radius: 16px; object-fit: cover; box-shadow: 0 0 0 2px rgba(61, 255, 158, .5) }
.iv-username { width: 100%; overflow: hidden; margin-top: 16px; color: #fff; font-size: 18px; font-weight: 800; text-overflow: ellipsis; white-space: nowrap }
.iv-steam-link { display: inline-flex; align-items: center; gap: 4px; margin-top: 4px; color: rgba(255, 255, 255, .45); font-size: 11px; text-decoration: none; transition: color .15s }
.iv-steam-link:hover { color: #3dff9e }
.iv-steam-link svg { width: 12px; height: 12px }
.iv-total { width: 100%; margin-top: 20px; border: 1px solid rgba(61, 255, 158, .3); border-radius: 12px; padding: 16px 20px; background: rgba(0, 0, 0, .4) }
.iv-total-label { color: rgba(255, 255, 255, .4); font-size: 9px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase }
.iv-total-value {
  margin-top: 4px; font-size: 36px; font-weight: 800; font-variant-numeric: tabular-nums; line-height: 1;
  background: linear-gradient(180deg, #fff 0%, hsl(150, 84%, 60%) 120%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.iv-total-items { margin-top: 8px; color: rgba(255, 255, 255, .5); font-size: 11px }
.iv-total-items b { color: rgba(255, 255, 255, .7); font-family: var(--font-mono), ui-monospace, SFMono-Regular, Menlo, monospace; font-weight: 400; font-variant-numeric: tabular-nums }

.iv-percentile {
  width: 100%; overflow: hidden; margin-top: 12px; border: 1px solid rgba(251, 191, 36, .3); border-radius: 12px; padding: 12px 16px;
  background: linear-gradient(to bottom right, rgba(251, 191, 36, .12), rgba(245, 158, 11, .04));
}
.iv-percentile-row { display: flex; align-items: center; gap: 10px }
.iv-percentile-icon {
  display: flex; width: 36px; height: 36px; flex: none; align-items: center; justify-content: center;
  border-radius: 8px; background: rgba(251, 191, 36, .15); box-shadow: inset 0 0 0 1px rgba(251, 191, 36, .3); color: #fbbf24;
}
.iv-percentile-icon svg { width: 18px; height: 18px }
.iv-percentile-title { color: #fcd34d; font-size: 16px; font-weight: 800; line-height: 1; text-align: left }
.iv-percentile-sub { margin-top: 4px; color: rgba(255, 255, 255, .55); font-size: 10.5px; line-height: 1.25; text-align: left }

.iv-history { width: 100%; margin-top: 12px; border: 1px solid rgba(255, 255, 255, .07); border-radius: 12px; padding: 12px 16px; background: rgba(0, 0, 0, .3) }
.iv-history-title { display: flex; align-items: center; gap: 6px; margin-bottom: 6px; color: rgba(255, 255, 255, .4); font-size: 10px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase }
.iv-history-title svg { width: 12px; height: 12px }
.iv-spark { position: relative; cursor: crosshair }
.iv-spark svg { display: block; width: 100%; height: 60px }

.iv-cashout {
  position: relative; display: flex; width: 100%; align-items: center; justify-content: center; gap: 8px; overflow: hidden;
  margin-top: 16px; border-radius: 12px; padding: 12px 16px; background: #3dff9e; color: #000;
  font-size: 14px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; text-decoration: none;
  box-shadow: 0 8px 24px -8px rgba(34, 197, 94, .6); transition: box-shadow .2s, transform .1s;
}
.iv-cashout:hover { box-shadow: 0 12px 32px -8px rgba(34, 197, 94, .8) }
.iv-cashout:active { transform: scale(.98) }
.iv-cashout svg { position: relative; width: 16px; height: 16px }
.iv-cashout i {
  position: absolute; inset: 0; transform: translateX(-100%); pointer-events: none;
  background: linear-gradient(to right, transparent, rgba(255, 255, 255, .3), transparent); transition: transform .7s;
}
.iv-cashout:hover i { transform: translateX(100%) }
.iv-share {
  display: flex; width: 100%; align-items: center; justify-content: center; gap: 8px;
  margin-top: 8px; border: 1px solid rgba(255, 255, 255, .12); border-radius: 12px; padding: 10px 16px;
  background: rgba(255, 255, 255, .03); color: rgba(255, 255, 255, .7); font-family: inherit;
  font-size: 12px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase;
  cursor: pointer; transition: border-color .15s, color .15s;
}
.iv-share:hover { border-color: rgba(61, 255, 158, .4); color: #3dff9e }
.iv-share svg { width: 16px; height: 16px }
.iv-share.is-copied svg { color: #3dff9e }

/* ---- concentration ---- */
.iv-concentration {
  overflow: hidden; margin-bottom: 20px; border: 1px solid rgba(255, 255, 255, .06); border-radius: 16px; padding: 20px;
  background: linear-gradient(to bottom right, #15171c, #0d0f13);
}
.iv-concentration-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px }
.iv-concentration-head h3 { margin: 0; color: rgba(255, 255, 255, .85); font-size: 16px; font-weight: 700 }
.iv-concentration-head p { margin: 4px 0 0; color: rgba(255, 255, 255, .5); font-size: 12.5px; line-height: 1.6 }
.iv-concentration-pct { flex: none; color: #3dff9e; font-size: 24px; font-weight: 800; font-variant-numeric: tabular-nums }
.iv-concentration-bar { display: flex; height: 8px; width: 100%; overflow: hidden; margin-top: 16px; border-radius: 9999px; background: rgba(255, 255, 255, .05) }
.iv-concentration-bar span:nth-child(1) { background: #3dff9e }
.iv-concentration-bar span:nth-child(2) { background: rgba(61, 255, 158, .7) }
.iv-concentration-bar span:nth-child(3) { background: rgba(61, 255, 158, .45) }
.iv-concentration-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 16px }
.iv-concentration-card { border: 1px solid rgba(255, 255, 255, .06); border-radius: 12px; padding: 12px; background: rgba(0, 0, 0, .3); text-align: center }
.iv-concentration-card figure { display: flex; height: 56px; align-items: center; justify-content: center; margin: 0 }
.iv-concentration-card img { height: 56px; width: auto; object-fit: contain; filter: drop-shadow(0 6px 14px rgba(0, 0, 0, .5)) }
.iv-concentration-name { overflow: hidden; margin-top: 8px; color: rgba(255, 255, 255, .75); font-size: 10.5px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap }
.iv-concentration-price { margin-top: 2px; color: #3dff9e; font-size: 12px; font-weight: 800; font-variant-numeric: tabular-nums }
.iv-concentration-share { color: rgba(255, 255, 255, .4); font-size: 10px }

/* ---- item grid ---- */
.iv-section-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px }
.iv-section-head h2 { margin: 0; color: rgba(255, 255, 255, .85); font-size: 16px; font-weight: 700 }
.iv-section-head h2 span { margin-left: 4px; color: rgba(255, 255, 255, .35); font-variant-numeric: tabular-nums }
.iv-counter { color: rgba(255, 255, 255, .4); font-size: 11px; font-variant-numeric: tabular-nums }
.iv-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px }
.iv-empty-box { border: 1px solid rgba(255, 255, 255, .06); border-radius: 12px; padding: 40px; background: #101216; color: rgba(255, 255, 255, .5); text-align: center }
.iv-more-wrap { display: flex; justify-content: center; margin-top: 24px }
.iv-more {
  border: 1px solid rgba(255, 255, 255, .1); border-radius: 12px; padding: 12px 24px;
  background: rgba(255, 255, 255, .03); color: rgba(255, 255, 255, .8); font-family: inherit;
  font-size: 12px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase;
  cursor: pointer; transition: background .15s, border-color .15s, color .15s;
}
.iv-more:hover { border-color: rgba(61, 255, 158, .4); background: rgba(255, 255, 255, .06); color: #3dff9e }
.iv-more b { margin-left: 8px; color: rgba(255, 255, 255, .4); font-weight: 400; font-variant-numeric: tabular-nums }
.iv-more:hover b { color: rgba(61, 255, 158, .7) }

/* ---- skin card (same tile the market uses) ---- */
.iv-skin-card {
  position: relative; display: flex; aspect-ratio: 3 / 4; overflow: hidden; flex-direction: column;
  border: 1px solid rgba(255, 255, 255, .06); border-bottom-width: 3px; border-radius: 12px;
  cursor: pointer; user-select: none; transition: transform .2s ease-out, box-shadow .2s ease-out;
}
.iv-skin-card:hover { transform: translateY(-4px); box-shadow: 0 12px 40px rgba(0, 0, 0, .5) }
.iv-skin-card:active { transform: scale(.98) }
.iv-skin-tint { position: absolute; inset: 0; z-index: 0; background: linear-gradient(165deg, hsla(var(--accent), .06) 0%, hsla(var(--accent), .18) 50%, hsla(var(--accent), .35) 100%) }
.iv-skin-shade { position: absolute; inset: 0; z-index: 0; background: linear-gradient(to top, rgba(0, 0, 0, .6), transparent 50%, rgba(0, 0, 0, .2)) }
.iv-skin-accent { position: absolute; left: 0; right: 0; bottom: 0; z-index: 10; height: 3px; background: hsl(var(--accent)) }
.iv-skin-topline {
  position: absolute; left: 0; right: 0; top: 0; z-index: 10; height: 1.5px; opacity: .5; pointer-events: none;
  background: linear-gradient(90deg, transparent 0%, hsl(var(--accent)) 50%, transparent 100%); transition: opacity .3s;
}
.iv-skin-card:hover .iv-skin-topline { opacity: 1 }
.iv-skin-hoverglow {
  position: absolute; inset: 0; z-index: 5; border-radius: 12px; opacity: 0; pointer-events: none;
  box-shadow: 0 14px 38px -12px hsla(var(--accent), .6), inset 0 -32px 60px -30px hsla(var(--accent), .55);
  transition: opacity .5s;
}
.iv-skin-card:hover .iv-skin-hoverglow { opacity: 1 }
.iv-skin-innerglow {
  position: absolute; inset: 0; z-index: 3; border-radius: 12px; opacity: 0; pointer-events: none;
  box-shadow: 0 4px 30px hsla(var(--accent), .25), inset 0 0 60px hsla(var(--accent), .05); transition: opacity .3s;
}
.iv-skin-card:hover .iv-skin-innerglow { opacity: 1 }
.iv-skin-sheen {
  position: absolute; left: 0; right: 0; top: 0; z-index: 4; height: 64px; opacity: 0; pointer-events: none;
  background: linear-gradient(to bottom, rgba(255, 255, 255, .04), transparent); transition: opacity .2s;
}
.iv-skin-card:hover .iv-skin-sheen { opacity: 1 }
.iv-skin-badge {
  position: absolute; left: 8px; top: 8px; z-index: 20; display: inline-flex; height: 18px; min-width: 0;
  align-items: center; gap: 4px; border-radius: 6px; padding: 0 6px; background: rgba(0, 0, 0, .6);
}
.iv-skin-badge span { flex: none; color: hsl(var(--accent)); font-size: 9px; font-weight: 800; letter-spacing: .025em; line-height: 1; text-transform: uppercase }
.iv-skin-st {
  position: absolute; right: 8px; top: 8px; z-index: 20; display: inline-flex; height: 18px; align-items: center; gap: 2px;
  border: 1px solid rgba(251, 146, 60, .55); border-radius: 6px; padding: 0 6px;
  background: linear-gradient(135deg, #f97316 0%, #b45309 55%, #7c2d12 100%);
  box-shadow: 0 1px 8px -2px rgba(249, 115, 22, .5), inset 0 1px 0 rgba(255, 255, 255, .22), inset 0 -1px 0 rgba(0, 0, 0, .3);
}
.iv-skin-st b { color: #fff7ed; font-size: 9px; font-weight: 800; line-height: 1; text-transform: uppercase; text-shadow: 0 1px 0 rgba(0, 0, 0, .45) }
.iv-skin-st i { color: rgba(255, 247, 237, .9); font-size: 7px; font-style: normal; font-weight: 700; line-height: 1; text-shadow: 0 1px 0 rgba(0, 0, 0, .45) }
.iv-skin-watermark {
  position: absolute; left: 50%; top: 50%; z-index: 1; width: 72px; height: 72px; opacity: .35; pointer-events: none;
  transform: translate(-50%, -55%) rotate(-12deg); transition: transform .5s ease-out, opacity .5s ease-out;
}
.iv-skin-card:hover .iv-skin-watermark { transform: translate(-50%, -55%) rotate(-6deg) scale(1.1); opacity: .5 }
.iv-skin-image { position: relative; z-index: 10; display: flex; flex: 1; min-height: 0; align-items: center; justify-content: center; padding: 28px 10px 4px }
.iv-skin-image img { max-width: 100%; max-height: 100%; object-fit: contain; filter: drop-shadow(0 4px 12px rgba(0, 0, 0, .4)); transition: transform .3s ease-out, filter .3s ease-out }
.iv-skin-card:hover .iv-skin-image img { transform: scale(1.1); filter: drop-shadow(0 8px 24px rgba(0, 0, 0, .6)) }
.iv-skin-lines {
  position: absolute; left: 0; right: 0; bottom: 0; z-index: 2; height: 50%; pointer-events: none;
  background: linear-gradient(to top, rgba(255, 255, 255, .15), transparent); transition: transform .3s, opacity .3s;
}
.iv-skin-card:hover .iv-skin-lines { transform: translateY(32px) scale(1.25); opacity: .4 }
.iv-skin-foot { position: relative; z-index: 20; display: flex; flex-direction: column; gap: 2px; margin-top: auto; padding: 4px 8px 12px }
.iv-skin-weapon { overflow: hidden; color: rgba(255, 255, 255, .9); font-size: 10px; font-weight: 700; line-height: 1.25; text-overflow: ellipsis; text-transform: uppercase; white-space: nowrap }
.iv-skin-pattern { overflow: hidden; color: hsl(var(--accent)); font-size: 10px; font-weight: 600; line-height: 1.25; text-overflow: ellipsis; white-space: nowrap }
.iv-skin-price { margin-top: 2px; color: #3dff9e; font-size: 13px; font-weight: 800; font-variant-numeric: tabular-nums; line-height: 1 }

/* ---- category breakdown ---- */
.iv-breakdown {
  margin-top: 40px; border: 1px solid rgba(255, 255, 255, .06); border-radius: 16px; padding: 24px;
  background: linear-gradient(to bottom right, #15171c, #0d0f13);
}
.iv-breakdown-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px }
.iv-breakdown-head h3 { margin: 0; color: rgba(255, 255, 255, .85); font-size: 16px; font-weight: 700 }
.iv-breakdown-head span { color: rgba(255, 255, 255, .4); font-size: 11px; letter-spacing: .18em; text-transform: uppercase }
.iv-breakdown-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 32px }
.iv-breakdown-row { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; font-size: 12px }
.iv-breakdown-name { color: rgba(255, 255, 255, .85); font-weight: 700; text-transform: capitalize }
.iv-breakdown-meta { display: flex; align-items: center; gap: 8px; color: rgba(255, 255, 255, .4); font-variant-numeric: tabular-nums }
.iv-breakdown-meta b { color: #3dff9e }
.iv-breakdown-meta i { font-size: 11px; font-style: normal }
.iv-breakdown-track { position: relative; height: 8px; overflow: hidden; border-radius: 9999px; background: rgba(255, 255, 255, .05) }
.iv-breakdown-fill { position: absolute; left: 0; top: 0; bottom: 0; background: linear-gradient(to right, rgba(61, 255, 158, .7), #3dff9e, rgba(61, 255, 158, .9)) }

/* ---- empty state ---- */
.iv-overview { display: grid; grid-template-columns: 260px 1fr; gap: 24px; align-items: start }
.iv-recent { align-self: start; border: 1px solid rgba(255, 255, 255, .06); border-radius: 12px; padding: 12px; background: #101216; position: sticky; top: 96px }
.iv-recent-head { display: flex; align-items: center; justify-content: space-between; padding: 4px 8px 12px }
.iv-recent-head div { color: rgba(255, 255, 255, .4); font-size: 10px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase }
.iv-recent-dot { display: block; width: 6px; height: 6px; border-radius: 9999px; background: #4ade80; box-shadow: 0 0 6px rgba(74, 222, 128, .7) }
.iv-recent-list { display: flex; flex-direction: column; gap: 6px; max-height: 640px; overflow-y: auto; padding-right: 4px }
.iv-recent-list::-webkit-scrollbar { width: 4px }
.iv-recent-list::-webkit-scrollbar-thumb { border-radius: 4px; background: rgba(255, 255, 255, .1) }
.iv-recent-row { display: flex; align-items: center; gap: 8px; border: 1px solid transparent; border-radius: 8px; padding: 8px; background: rgba(255, 255, 255, .02) }
.iv-recent-row img, .iv-recent-row .iv-avatar-blank { width: 32px; height: 32px; flex: none; border-radius: 6px; object-fit: cover; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .1); background: rgba(255, 255, 255, .05) }
.iv-recent-name { overflow: hidden; color: #fff; font-size: 11px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap }
.iv-recent-items { color: rgba(255, 255, 255, .3); font-size: 9px }
.iv-recent-value { color: #3dff9e; font-size: 12px; font-weight: 800; font-variant-numeric: tabular-nums; text-align: right }
.iv-recent-empty { padding: 32px 0; color: rgba(255, 255, 255, .3); font-size: 12px; text-align: center }
.iv-columns { display: flex; flex-direction: column; gap: 32px }
.iv-heading { margin: 0 0 16px; font-size: 20px; font-weight: 800; letter-spacing: -.025em }
.iv-heading span {
  background: linear-gradient(110deg, #fff 0%, hsla(150, 84%, 60%, 1) 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.iv-heading.is-gold span { background: linear-gradient(110deg, #fff 0%, hsla(38, 92%, 50%, 1) 100%); -webkit-background-clip: text; background-clip: text }
.iv-leaders { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px }
.iv-leader { display: flex; align-items: center; gap: 12px; border: 1px solid rgba(255, 255, 255, .06); border-radius: 12px; padding: 12px 16px; background: #101216 }
.iv-leader-rank { display: flex; width: 28px; height: 28px; flex: none; align-items: center; justify-content: center; border-radius: 6px; background: rgba(251, 191, 36, .1); color: #fbbf24; font-size: 11px; font-weight: 800 }
.iv-leader img { width: 36px; height: 36px; border-radius: 6px; object-fit: cover }
.iv-leader-name { overflow: hidden; color: #fff; font-size: 12px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap }
.iv-leader-items { color: rgba(255, 255, 255, .4); font-size: 10px }
.iv-leader-value { color: #fbbf24; font-size: 14px; font-weight: 800; font-variant-numeric: tabular-nums; text-align: right }

/* ---- sell banner (shared tool CTA) ---- */
.iv-cta {
  position: relative; display: block; overflow: hidden; margin-top: 24px;
  border: 1px solid rgba(61, 255, 158, .3); border-radius: 16px; padding: 24px;
  background: linear-gradient(to bottom right, #0d1411, #0a0d0c, #0a1f15);
  text-decoration: none; transition: transform .2s;
}
.iv-cta:hover { transform: translateY(-2px) }
.iv-cta-glow { position: absolute; right: -128px; top: -128px; width: 360px; height: 360px; border-radius: 9999px; background: rgba(17, 197, 107, .5); opacity: .3; filter: blur(100px); transition: opacity .5s; pointer-events: none }
.iv-cta:hover .iv-cta-glow { opacity: .6 }
.iv-cta-sheen {
  position: absolute; inset: 0; transform: translateX(-100%); pointer-events: none;
  background: linear-gradient(to right, transparent, rgba(255, 255, 255, .07), transparent); transition: transform 1s ease-out;
}
.iv-cta:hover .iv-cta-sheen { transform: translateX(100%) }
.iv-cta-grid {
  position: absolute; inset: 0; opacity: .03; pointer-events: none;
  background-image: linear-gradient(rgba(255, 255, 255, .5) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .5) 1px, transparent 1px);
  background-size: 24px 24px;
}
.iv-cta-row { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 16px }
.iv-cta-copy { display: block; min-width: 0 }
.iv-cta-badge {
  display: inline-flex; align-items: center; gap: 4px; border: 1px solid rgba(61, 255, 158, .3); border-radius: 9999px;
  padding: 2px 8px; background: rgba(61, 255, 158, .08); color: #3dff9e;
  font-size: 9px; font-weight: 800; letter-spacing: .18em; text-transform: uppercase;
}
.iv-cta-badge svg { width: 10px; height: 10px }
.iv-cta-title { display: block; margin: 8px 0 0; color: #fff; font-size: 20px; font-weight: 800; letter-spacing: -.025em; line-height: 1.25 }
.iv-cta-note { display: block; margin: 4px 0 0; color: rgba(255, 255, 255, .55); font-size: 12.5px }
.iv-cta-button {
  position: relative; overflow: hidden; display: inline-flex; flex: none; align-items: center; justify-content: center; gap: 8px;
  border-radius: 12px; padding: 12px 20px; background: #3dff9e; color: #000;
  font-size: 14px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; white-space: nowrap;
  box-shadow: 0 8px 30px -8px rgba(34, 197, 94, .6); transition: box-shadow .2s;
}
.iv-cta:hover .iv-cta-button { box-shadow: 0 14px 42px -8px rgba(34, 197, 94, .9) }
.iv-cta-button i { position: absolute; inset: 0; transform: translateX(-100%); pointer-events: none; background: linear-gradient(to right, transparent, rgba(255, 255, 255, .3), transparent); transition: transform .7s }
.iv-cta:hover .iv-cta-button i { transform: translateX(100%) }
.iv-cta-button svg { position: relative; width: 16px; height: 16px; transition: transform .2s }
.iv-cta:hover .iv-cta-button svg { transform: translateX(2px) }

/* ---- FAQ ---- */
.iv-faq-section { margin-top: 80px }
.iv-faq-title { margin: 0 0 32px; font-size: 30px; font-weight: 800; text-align: center }
.iv-faq-title span {
  background: linear-gradient(110deg, #fff 0%, hsla(150, 84%, 60%, 1) 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.iv-faq {
  position: relative; display: flex; width: 100%; max-width: 896px; flex-direction: column; gap: 8px;
  margin: 0 auto; border: 1px solid #2a2a2e; border-radius: 12px; padding: 20px;
  background: linear-gradient(to bottom, #161619, #121214);
}
.iv-faq::before { content: ''; position: absolute; left: 50%; top: -40px; width: 256px; height: 160px; transform: translateX(-50%); border-radius: 9999px; background: rgba(34, 197, 94, .1); filter: blur(48px); pointer-events: none }
.iv-faq-item { position: relative; overflow: hidden; border: 1px solid #2a2a2e; border-radius: 8px; background: #131316; transition: border-color .3s, box-shadow .3s }
.iv-faq-item:hover { border-color: #3a3a3e }
.iv-faq-item.is-open { border-color: rgba(34, 197, 94, .4); box-shadow: 0 6px 24px -12px rgba(34, 197, 94, .35) }
.iv-faq-item::before { content: ''; position: absolute; left: 0; top: 0; bottom: 0; width: 2px; opacity: .6; background: linear-gradient(to bottom, #4ade80, #16a34a); transition: width .3s, opacity .3s }
.iv-faq-item:hover::before { opacity: .9 }
.iv-faq-item.is-open::before { width: 3px; opacity: 1 }
.iv-faq-button {
  position: relative; display: flex; width: 100%; align-items: center; justify-content: space-between; gap: 16px;
  border: 0; padding: 16px; background: transparent; color: inherit; font-family: inherit; text-align: left;
  cursor: pointer; transition: background .2s;
}
.iv-faq-button:hover { background: rgba(255, 255, 255, .02) }
.iv-faq-q { display: flex; min-width: 0; align-items: center; gap: 12px }
.iv-faq-dot { display: block; width: 6px; height: 6px; flex: none; border-radius: 9999px; background: #52525b; transition: background .3s, box-shadow .3s }
.iv-faq-item.is-open .iv-faq-dot { background: #4ade80; box-shadow: 0 0 8px rgba(34, 197, 94, .8) }
.iv-faq-q span { min-width: 0; color: #fff; font-size: 14px; font-weight: 700; transition: color .3s }
.iv-faq-item.is-open .iv-faq-q span { color: #ecfdf5 }
.iv-faq-button > svg { width: 16px; height: 16px; flex: none; margin-left: 16px; color: #8f8f93; transition: transform .3s, color .3s }
.iv-faq-item.is-open .iv-faq-button > svg { transform: rotate(180deg); color: #4ade80 }
.iv-faq-body { display: grid; grid-template-rows: 0fr; opacity: 0; transition: grid-template-rows .3s ease-out, opacity .3s ease-out }
.iv-faq-item.is-open .iv-faq-body { grid-template-rows: 1fr; opacity: 1 }
.iv-faq-body > div { overflow: hidden }
.iv-faq-body p { margin: 0; border-top: 1px solid rgba(255, 255, 255, .05); padding: 4px 16px 16px; color: #a1a1aa; font-size: 14px; line-height: 1.7 }

/* ---- animated cashout card ---- */
@keyframes skct-spin { to { transform: rotate(360deg) } }
@keyframes skct-rise { from { opacity: 0; transform: translateY(16px) } to { opacity: 1; transform: none } }
@keyframes skct-float { 0%, 100% { opacity: 0; transform: translateY(0) scale(.6) } 35% { opacity: .9 } 50% { transform: translateY(-16px) scale(1.1) } 100% { opacity: 0 } }
@keyframes skct-drift { 0%, 100% { transform: translate(0, 0) } 50% { transform: translate(24px, -18px) } }
@keyframes skct-sweep { 0% { transform: translateX(-140%) } 55%, 100% { transform: translateX(260%) } }
@keyframes skct-btnglow { 0%, 100% { box-shadow: 0 8px 30px -8px rgba(34, 197, 94, .65) } 50% { box-shadow: 0 14px 44px -8px rgba(34, 197, 94, 1) } }
@keyframes skct-textglow { 0%, 100% { text-shadow: 0 0 26px rgba(34, 197, 94, .18) } 50% { text-shadow: 0 0 40px rgba(34, 197, 94, .45) } }
@keyframes skct-pulse { 0%, 100% { opacity: .5 } 50% { opacity: 1 } }
.skct-card { position: relative; margin-top: 80px; border-radius: 18px; overflow: hidden; padding: 2px; animation: skct-rise .6s cubic-bezier(.2, .7, .2, 1) both }
.skct-ring { position: absolute; inset: -60%; background: conic-gradient(from 0deg, transparent 0%, rgba(34, 197, 94, 0) 55%, rgba(34, 197, 94, .9) 72%, rgba(140, 255, 180, 1) 80%, rgba(34, 197, 94, .9) 88%, transparent 100%); animation: skct-spin 7s linear infinite }
.skct-fill { position: absolute; inset: 2px; border-radius: 16px; background: linear-gradient(135deg, #0d1411, #0a0d0c 45%, #0a1f15) }
.skct-body { position: relative; z-index: 10; padding: 42px 44px }
.skct-glow { position: absolute; border-radius: 9999px; filter: blur(120px); pointer-events: none }
.skct-particle { position: absolute; width: 5px; height: 5px; border-radius: 9999px; background: #22c55e; box-shadow: 0 0 10px #22c55e; pointer-events: none }
.skct-grid {
  position: absolute; inset: 0; opacity: .04; pointer-events: none;
  background-image: linear-gradient(rgba(255, 255, 255, .5) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .5) 1px, transparent 1px);
  background-size: 46px 46px;
}
.skct-row { position: relative; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 24px }
.skct-chip {
  display: inline-flex; align-items: center; gap: 8px; border-radius: 9999px; border: 1px solid rgba(34, 197, 94, .4);
  background: rgba(34, 197, 94, .1); padding: 5px 14px; font-size: 10px; font-weight: 700;
  text-transform: uppercase; letter-spacing: .22em; color: #22c55e; margin-bottom: 16px;
}
.skct-dot { position: relative; display: inline-flex; width: 6px; height: 6px }
.skct-dot::before { content: ''; position: absolute; inset: 0; border-radius: 9999px; background: #22c55e; animation: skct-pulse 1.6s ease-in-out infinite }
.skct-dot::after { content: ''; position: absolute; inset: 0; border-radius: 9999px; background: #22c55e; opacity: .6 }
.skct-title { margin: 0; font-size: 30px; font-weight: 800; letter-spacing: -.02em; line-height: 1.1; color: #fff; animation: skct-textglow 3.2s ease-in-out infinite }
.skct-text { margin: 10px 0 0; max-width: 576px; color: rgba(255, 255, 255, .6); font-size: 14px; line-height: 1.625 }
.skct-btn {
  position: relative; display: inline-flex; align-items: center; justify-content: center; gap: 8px; overflow: hidden;
  border-radius: 14px; background: linear-gradient(180deg, #2ee36a, #16a34a); padding: 16px 30px;
  font-size: 13px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; color: #04140a;
  white-space: nowrap; text-decoration: none; animation: skct-btnglow 2.8s ease-in-out infinite; transition: transform .12s;
}
.skct-btn:hover { transform: translateY(-2px) }
.skct-btn:active { transform: translateY(0) scale(.98) }
.skct-btn .shine { position: absolute; top: 0; bottom: 0; width: 45%; background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .6), transparent); animation: skct-sweep 3s ease-in-out infinite }
.skct-btn svg { width: 16px; height: 16px; transition: transform .2s }
.skct-btn:hover svg { transform: translateX(5px) }

@media (max-width: 1400px) {
  .iv-grid { grid-template-columns: repeat(5, minmax(0, 1fr)) }
}
@media (max-width: 1100px) {
  .iv-content { padding: 40px 24px 72px }
  .iv-title { font-size: 44px }
  .iv-title-game { font-size: 36px }
  .iv-hero { grid-template-columns: 1fr }
  .iv-showcase { display: none }
  .iv-result, .iv-overview { grid-template-columns: 1fr }
  .iv-side, .iv-recent { position: static }
  .iv-grid { grid-template-columns: repeat(4, minmax(0, 1fr)) }
  .iv-leaders { grid-template-columns: repeat(2, minmax(0, 1fr)) }
}
@media (max-width: 767px) {
  .iv-content { padding: 28px 12px 64px }
  .iv-title { font-size: 32px }
  .iv-title-game { font-size: 28px }
  .iv-form { flex-direction: column }
  .iv-submit { width: 100% }
  .iv-stats { grid-template-columns: repeat(2, minmax(0, 1fr)) }
  .iv-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) }
  .iv-breakdown-grid, .iv-leaders { grid-template-columns: 1fr }
  .iv-cta-row, .skct-row { grid-template-columns: 1fr; flex-direction: column; align-items: stretch; text-align: center }
  .skct-body { padding: 34px 32px }
  .skct-title { font-size: 26px }
  .iv-faq-title { font-size: 24px }
}

@media (prefers-reduced-motion: reduce) {
  .iv-float, .iv-float-logo { animation: none }
}
