.item-name-row { display:flex; align-items:baseline; gap:9px; min-width:0; }
.item-name-row h1 { min-width:0; }
.name-copy { display:inline-flex; align-items:center; justify-content:center; flex:none; width:28px; height:28px; padding:5px; border:1px solid transparent; border-radius:7px; background:transparent; color:var(--muted); cursor:pointer; vertical-align:middle; transition:color .15s, background .15s; }
.name-copy .icon { width:15px; height:15px; fill:none; stroke:currentColor; }
.name-copy:hover { color:var(--ice); background:rgba(127,178,255,.08); }
.name-copy:focus-visible, .skin-sticker:focus-visible { outline:2px solid var(--blue); outline-offset:2px; }
.name-copy.is-copied { color:var(--ok); }
.applied-stickers { display:inline-flex; align-items:center; flex-wrap:wrap; gap:5px; vertical-align:middle; }
.skin-sticker { position:relative; display:inline-flex; align-items:center; justify-content:center; vertical-align:middle; width:48px; height:48px; padding:2px; border:1px solid transparent; border-radius:9px; background:transparent; cursor:pointer; color:var(--muted); transition:background .15s, border-color .15s; }
.skin-sticker:hover, .skin-sticker[aria-expanded="true"] { background:rgba(127,178,255,.07); border-color:rgba(127,178,255,.18); }
.skin-sticker img { display:block; width:44px; height:44px; object-fit:contain; filter:drop-shadow(0 3px 5px #0005); }
.skin-sticker img[hidden] { display:none; }
.skin-sticker-fallback { display:flex; align-items:center; justify-content:center; width:32px; height:32px; border:1px dashed var(--line-2); border-radius:7px; }
.skin-sticker-fallback .icon { width:18px; height:18px; }
.skin-sticker.has-art .skin-sticker-fallback { display:none; }
.sticker-popover { position:fixed; z-index:1200; display:flex; align-items:center; gap:8px; width:max-content; max-width:min(340px, calc(100vw - 16px)); padding:9px 10px 9px 13px; background:#202633; border:1px solid var(--line-2); border-radius:10px; box-shadow:0 10px 28px #0006; color:var(--text); }
.sticker-popover[hidden] { display:none; }
.sticker-popover-name { min-width:0; font-size:12px; font-weight:500; line-height:1.45; overflow-wrap:anywhere; }
.lot-stickers { padding:12px 0; }
.lot-stickers-label { display:block; color:var(--muted); font-size:11px; margin-bottom:7px; }
@media (max-width:640px) { .item-name-row { gap:4px; } .name-copy { width:28px; height:28px; } .skin-sticker { width:42px; height:42px; } .skin-sticker img { width:38px; height:38px; } .applied-stickers { gap:2px; } }
@media (prefers-reduced-motion:reduce) { .name-copy, .skin-sticker { transition:none; } }
.wear-variants { margin:24px 0 30px; }
.wear-variants[hidden] { display:none; }
.wear-variants-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:12px; }
.wear-variants-head h2 { margin:0; color:var(--text); font-size:16px; font-weight:650; letter-spacing:-.02em; }
.wear-types { display:inline-flex; align-items:center; gap:4px; padding:3px; background:var(--surface); border:1px solid var(--line); border-radius:9px; }
.wear-type { padding:5px 11px; border-radius:6px; color:var(--muted); font-size:11px; text-decoration:none; }
.wear-type.is-current { color:var(--ice); background:rgba(91,157,255,.14); }
.wear-type:hover { color:var(--ice); }
.wear-choices { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
.wear-choice { display:flex; flex-direction:column; justify-content:center; gap:9px; min-height:86px; padding:15px; border:1px solid var(--line); border-radius:11px; background:var(--surface); text-decoration:none; transition:background .15s,border-color .15s; }
a.wear-choice:hover { background:rgba(127,178,255,.06); border-color:var(--line-2); }
.wear-choice.is-current { border-color:rgba(91,157,255,.55); background:rgba(91,157,255,.09); box-shadow:inset 0 0 0 1px rgba(91,157,255,.06); }
.wear-choice-name { display:flex; align-items:center; gap:7px; color:var(--text-2); font-size:11px; line-height:1.4; }
.wear-choice-name b { color:var(--wear-color); font-size:11px; font-weight:650; }
.wear-choice-price { color:var(--muted); font-size:11px; }
.wear-choice-price strong { color:var(--ice); font-size:13px; font-weight:650; font-variant-numeric:tabular-nums; }
.wear-choice.is-unavailable { opacity:.45; }
.wear-retry { color:var(--blue); background:none; border:0; font:inherit; cursor:pointer; }
.offers-tools { flex-wrap:wrap; }
.offers-tools > label { flex:0 1 auto; min-width:108px; }
.offers-tools select { min-width:0; }
.offers-table .of-nametag { min-width:85px; max-width:140px; }
.of-nametag-name { max-width:130px; white-space:normal; overflow-wrap:anywhere; }
.of-stickers-cell { min-width:170px; }
.of-charms-cell { min-width:60px; }
.attachment-no-data { display:inline-flex; align-items:center; justify-content:center; width:17px; height:17px; color:var(--muted); border:1px solid var(--line); border-radius:50%; font-size:10px; cursor:help; }
.attachment-unknown { display:inline-flex; color:var(--muted); padding:8px; }
.attachment-pattern { display:block; margin-top:3px; color:var(--muted); font-size:10px; }
.offers-result:empty { display:none; }
.offers-result:not(:empty) { margin:0 0 18px; }
.offers-result, .buy-result { scroll-margin-top:calc(var(--header-h) + 18px); }
@media (max-width:850px) { .wear-choices { grid-template-columns:repeat(3,minmax(0,1fr)); } .wear-choice { padding:12px; } }
@media (max-width:540px) { .wear-variants-head { align-items:flex-start; flex-direction:column; gap:8px; } .wear-choices { grid-template-columns:repeat(2,minmax(0,1fr)); } .wear-choice:last-child { grid-column:1/-1; } .wear-choice-name { font-size:10px; } .wear-choice { min-height:76px; } }

/* Shared row geometry: the float scale and checkout occupy the same grid row. */
.item-page .item-layout, .lot-page .lot-layout { grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); gap:20px 28px; align-items:stretch; }
.item-page .item-view, .item-page .item-side, .lot-page .lot-view, .lot-page .lot-side { display:contents; }
.item-page .item-preview, .lot-page .lot-view > .art-frame { grid-column:1; grid-row:2; min-width:0; }
.item-page .float-block, .lot-page .float-block { grid-column:1; grid-row:3; margin:0; align-self:stretch; min-width:0; }
.item-summary { grid-column:2; grid-row:2; min-width:0; padding:12px 4px; }
.item-layout .item-summary .buy-facts, .lot-layout .item-summary .buy-facts { display:flex; flex-direction:column; gap:0; margin:0; border:0; background:none; }
.item-summary .buy-facts > div { display:flex; justify-content:space-between; align-items:baseline; gap:20px; min-height:46px; padding:12px 0; background:none; }
.item-summary .buy-facts > div[hidden] { display:none; }
.item-summary .buy-facts dt { flex:none; font-size:12px; line-height:1.5; }
.item-summary .buy-facts dd { margin:0; text-align:right; font-size:13px; font-weight:500; line-height:1.5; overflow-wrap:anywhere; font-variant-numeric:tabular-nums; }
.item-page .buy-card, .lot-page .buy-card { grid-column:2; grid-row:3; display:grid; grid-template-columns:minmax(0,1fr); align-content:center; gap:12px; padding:18px 20px; border:1px solid rgba(91,157,255,.24); border-radius:13px; background:linear-gradient(110deg,rgba(91,157,255,.09),transparent 75%),var(--surface); box-shadow:none; min-width:0; }
/* Цена и строка скидки — один блок по левому краю. Раньше space-between
   разносил их по краям карточки, и подпись «ниже Steam» висела в правом
   верхнем углу отдельным островом: при узкой карточке она переносилась на
   свою строку и читалась как посторонний элемент. */
.purchase-price { display:flex; flex-direction:column; align-items:flex-start; gap:3px; }
.purchase-price .buy-price { display:flex; align-items:baseline; flex-wrap:wrap; gap:10px; }
.purchase-price .bp-now { font-size:26px; line-height:1.2; letter-spacing:-.025em; }
.purchase-price .bp-steam { font-size:11px; }
.purchase-price .buy-save { margin:0; font-size:11px; line-height:1.5; }
.buy-card .buy-cta { gap:8px; }
.buy-card .buy-actions, .lot-page #lot-cta { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
.buy-card .buy-cta .btn { min-height:40px; height:auto; padding:10px 14px; font:600 12px/1.4 var(--font); white-space:normal; }
.buy-card .buy-actions .btn-ghost, .lot-page #lot-cart { white-space:nowrap; }
.buy-card .buy-blocked { margin:0; font-size:12px; }
.buy-card .buy-hint { font-size:11px; line-height:1.5; }
.buy-card .buy-result:empty { display:none; }
.buy-card .buy-guarantee { margin:0; padding:0; border:0; }
.purchase-notes summary { cursor:pointer; font-size:11px; line-height:1.5; color:var(--muted); }
.purchase-notes[open] summary { margin-bottom:8px; }
.purchase-notes .buy-hint + .buy-hint { margin-top:7px; }
.lot-page #lot-extras { grid-column:1/-1; grid-row:4; margin:0; }
.lot-page #lot-more { grid-column:1/-1; grid-row:5; margin:0; padding-top:6px; border:0; }
.lot-page .lot-more-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.lot-page .lm-float, .lot-page .lm-price { font-family:var(--font); }
.lot-page .lot-back, .lot-page .lot-legal { margin:0; font-size:11px; line-height:1.5; }
.item-name-row { align-items:center; }
/* Лот из адреса уже выкуплен: страница показывает следующий по цене и
   объясняет это одной строкой под названием, не превращаясь в алерт. */
.lot-swapped { margin:10px 0 0; font-size:12px; line-height:1.5; color:var(--muted); }
.lot-swapped[hidden] { display:none; }
.item-page .item-heading h1, .lot-page .item-heading h1 { font-size:clamp(24px,2.5vw,34px); font-weight:600; line-height:1.25; letter-spacing:-.025em; }
.item-page .offers-tools { display:grid; grid-template-columns:minmax(130px,1fr) repeat(5,minmax(100px,auto)) auto; gap:12px; align-items:end; }
.offers-tools #of-visible-count { margin:0; align-self:end; padding-bottom:11px; font-size:11px; line-height:18px; }
.offers-tools > label { min-width:0; gap:6px; font:500 11px/16px var(--font); }
.item-page .offers-tools select { width:100%; min-width:0; height:40px; padding:9px 11px; font:500 12px/20px var(--font); }
.item-page .offers-tools > .btn { height:40px; font:600 11px/18px var(--font); }
.item-page .offers-bar { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)) auto auto; gap:12px; align-items:end; }
.offers-bar .of-field { min-width:0; gap:6px; }
.offers-bar .of-field > span { font:500 11px/16px var(--font); }
.offers-bar .of-field input { height:40px; padding:9px 12px; font:500 12px/20px var(--font); font-variant-numeric:tabular-nums; }
.offers-bar > .btn { height:40px; margin:0; font:600 12px/18px var(--font); }
.offers-table thead th { font:600 11px/16px var(--font); letter-spacing:.035em; vertical-align:middle; }
.offers-table .of-float { font-size:12px; font-weight:500; }
.wear-choice-name { align-items:flex-start; min-height:31px; font-size:11px; line-height:1.4; font-weight:500; }
.wear-choice-name b { flex:none; line-height:1.4; }
.wear-choice-price { line-height:18px; }
@media (max-width:1100px) {
  .item-page .offers-tools { grid-template-columns:repeat(5,minmax(0,1fr)); }
  .offers-tools #of-visible-count { grid-column:1/-1; padding:0; }
  .item-page .offers-tools > a { display:none; }
}
@media (max-width:1000px) {
  .item-page .item-layout, .lot-page .lot-layout { grid-template-columns:minmax(0,1fr); gap:18px; }
  .item-layout > .item-heading, .lot-layout > .item-heading { grid-column:1; grid-row:auto; order:0; }
  .item-page .item-preview, .lot-page .lot-view > .art-frame { grid-column:1; grid-row:auto; order:1; }
  .item-page .item-summary, .lot-page .item-summary { grid-column:1; grid-row:auto; order:2; padding:0; }
  .item-page .float-block, .lot-page .float-block { grid-column:1; grid-row:auto; order:3; }
  .item-page .buy-card, .lot-page .buy-card { grid-column:1; grid-row:auto; order:4; }
  .lot-page #lot-extras { grid-column:1; grid-row:auto; order:5; }
  .lot-page #lot-more { grid-column:1; grid-row:auto; order:6; }
  .item-summary .buy-facts > div { min-height:38px; padding:8px 0; }
}
@media (max-width:640px) {
  .item-page .offers-tools { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .offers-tools > label:last-of-type { grid-column:1/-1; }
  .item-page .offers-bar { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .offers-bar > .btn { width:100%; }
  .item-page .buy-card, .lot-page .buy-card { padding:16px; }
  .item-summary .buy-facts dt { font-size:11px; }
  .item-summary .buy-facts dd { font-size:12px; }
  .purchase-price .bp-now { font-size:24px; }
  .lot-page .lot-more-list { grid-template-columns:minmax(0,1fr); }
  .wear-choice-name { font-size:11px; }
}
