/* SUBZ — профиль на телефоне (≤760px). Подключается в profile.html после lobby-v9.css.
   Десктоп не затрагивает. Цель: вкладки на первом экране, всё плотнее и читаемее.
   v2: вкладка «Магазин» больше не шире экрана (см. блок «Панели вкладок» ниже).
   v3: «Витрина» и «Коллекция» на телефоне — одна карточка, коллекция сеткой 2×2. */

/* Панели вкладок: колонка не шире самой панели. Иначе строка фильтров «Магазина»
   (Все / Claude API / ChatGPT API · Codex / …) растягивала панель на свою полную длину,
   и сетка лотов уезжала вправо за край телефона. На десктопе результат тот же, что и был. */
.lb-panel{grid-template-columns:minmax(0,1fr)}
.lb-panel>*{min-width:0}
.lb-h--bar .pl-tabs--scroll{min-width:0}

@media (max-width:760px){
  .lb{margin-top:0;padding-bottom:28px}

  /* Обложка ниже, карточка игрока ближе к верху */
  .lb-stage.pl-cover{height:132px;clip-path:polygon(0 0,100% 0,100% calc(100% - 18px),calc(100% - 18px) 100%,0 100%)}
  .lb-stage__top{inset:10px 10px auto}
  .lb .pl-cover__word{font-size:118px}
  .lb-grid{gap:0;margin-top:-50px;padding:0 10px}

  /* Карточка игрока */
  .lb-player{--cut:14px;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:12px 8px;padding:14px 12px}
  .lb-player>*{grid-column:1/-1}
  .lb-id{column-gap:12px}
  .lb-id__ava{padding:4px}
  .lb-id .pl-ava{width:74px;height:74px}
  .lb-id .pl-ava__pic{border-width:3px;border-radius:20px}
  .lb-id .pl-ava__pic b{font-size:32px}
  .lb-id .pl-ava__ring,.lb-id .pl-ava::before{inset:-5px;border-radius:25px}
  .lb-id .pl-ava__lvl{right:-7px;bottom:-5px;min-width:26px;height:26px;padding:0 4px;border-width:2px;border-radius:8px;font-size:12px}
  .lb .lb-name{font-size:24px;line-height:1}
  .lb-id .lb-staff{padding:5px 9px;font-size:9.5px;letter-spacing:.12em}
  .lb-id .lb-staff .ico{width:12px;height:12px}
  .lb-id .pl-badges{padding:4px 8px 4px 6px}
  .lb .lb-bio{font-size:13.5px;line-height:1.4}

  /* Звание и уровень — одной строкой, двумя плитками */
  .lb-rank,.lb-xp{min-width:0;min-height:58px}
  .lb-rank{grid-column:1;gap:9px;padding:8px 10px}
  .lb-emblem{flex:none;width:34px;height:39px}
  .lb-rank__txt{gap:1px}
  .lb-rank__txt span{font-size:8.5px;letter-spacing:.14em}
  .lb-rank__txt b{font-size:14.5px;line-height:1.1;letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .lb-rank__txt small{display:none}  /* «до следующего звания» — видно по шкале XP рядом */
  .lb-xp{grid-column:2;align-content:center;gap:7px;padding:8px 10px;border:1px solid var(--line)}
  .lb-xp__top{flex-wrap:nowrap;min-width:0}
  .lb-xp__top b{flex:none;font-size:17px;white-space:nowrap}
  .lb-xp__top span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;letter-spacing:.12em}
  .lb-xp .lb-seg{gap:2px}
  .lb-xp>small{display:none}

  /* Статистика — 4 компактные плитки */
  .lb-stats>div{min-width:0;padding:9px 7px 8px}
  .lb-stats dt{font-size:8.5px;letter-spacing:.1em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .lb-stats dd{font-size:19px}
  .lb-stats dd small{font-size:10px}

  /* Теги — одна строка с прокруткой вместо переноса */
  .lb-tags{flex-wrap:nowrap;overflow-x:auto;margin:0 -12px;padding:0 12px;scrollbar-width:none}
  .lb-tags::-webkit-scrollbar{display:none}
  .lb-tags .pl-tag{flex:none;font-size:12px}

  /* «Оценить игрока»: без покупки оценить нельзя — на телефоне подсказку не показываем, форму оставляем */
  .lb-rate:has(.x-hint){display:none}
  .lb-rate{gap:6px;padding-top:12px}
  .lb-rate>.mono{font-size:9px;letter-spacing:.16em}
  .lb-rate .x-hint{font-family:inherit;font-size:12.5px;letter-spacing:0;text-transform:none;line-height:1.4;color:var(--mute)}

  /* Вкладки — во всю ширину, влезают все, липнут под шапкой */
  .lb-main{margin-top:14px}
  .lb-tabs{gap:0;margin:0 -10px;padding:0}
  .lb-tabs button{flex:1 1 auto;justify-content:center;gap:5px;min-width:0;height:44px;padding:0 6px;font-size:11.5px;letter-spacing:.03em}
  .lb-tabs button i{padding:1px 3px;font-size:8.5px}

  /* Панели */
  .lb-panel{gap:10px;padding-top:12px}
  .lb-box{padding:14px 12px}
  .lb-h{gap:10px;margin-bottom:12px}
  .lb-h h2{gap:9px;font-size:15px}
  .lb-h h2::before{width:7px;height:7px}
  .lb-h>.mono,.lb-h>span{font-size:9px;letter-spacing:.1em;text-align:right}
  .lb-about__text{font-size:14px;line-height:1.55}

  /* Витрина: три медали в ряд, без лишнего воздуха */
  .lb .shelf{gap:4px}
  .lb .shelf__it{gap:4px;padding:4px 2px}
  .lb .shelf__it .ac--lg{--s:52px}
  .lb .shelf__it b{font-size:12.5px}
  .lb .shelf__rar{font-size:8px;letter-spacing:.1em}
  .lb .shelf__it small{font-size:9.5px}

  /* Витрина + коллекция — одна карточка вместо двух отдельных: сверху медали,
     под тонкой линией — коллекция. У верхней части нет нижнего среза, у нижней — верхнего. */
  .lb-row2{gap:0}
  .lb-row2>.lb-box:first-child{clip-path:polygon(var(--cut) 0,100% 0,100% 100%,0 100%,0 var(--cut));padding-bottom:12px}
  .lb-row2>.lb-box:last-child{clip-path:polygon(0 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%);margin-top:-1px;padding-top:12px;background:var(--bg-1)}
  .lb-row2>.lb-box:last-child::after{display:none}
  .lb-row2>.lb-box:last-child .lb-h{margin-bottom:10px}
  .lb-row2>.lb-box:last-child .lb-h h2{gap:8px;font-size:11px;letter-spacing:.16em;color:var(--fg-2)}
  .lb-row2>.lb-box:last-child .lb-h h2::before{width:5px;height:5px;box-shadow:none}

  /* Коллекция — сетка 2×2: название и счёт над полоской */
  .lb-rar{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-bottom:12px}
  .lb-rar li{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name n" "bar bar";gap:6px 8px}
  .lb-rar li>span:first-child{grid-area:name;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px;letter-spacing:.1em}
  .lb-rar li>.lb-rar__bar{grid-area:bar;height:6px}
  .lb-rar li>b{grid-area:n;font-size:10px;letter-spacing:.04em}

  /* Квест и призывы */
  .lb-quest{padding:14px 12px}
  .lb-quest .ac{--s:54px}
  .lb-quest__main>b{font-size:17px}
  .lb-cta{gap:12px;font-size:13.5px;line-height:1.45}
}

/* Узкие телефоны 360–380px: звание и уровень остаются в одну строку, но плотнее */
@media (max-width:380px){
  .lb-player{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
  .lb-rank{gap:8px;padding:8px}
  .lb-emblem{width:30px;height:34px}
  .lb-rank__txt b{font-size:13.5px}
  .lb-xp{padding:8px}
  .lb-xp__top{gap:6px}
  .lb-xp__top b{font-size:16px}
  .lb-xp__top span{font-size:8.5px;letter-spacing:.06em}
}

/* Совсем узкие экраны (320px: iPhone SE 1-го поколения, старые Android) */
@media (max-width:340px){
  .lb-player{grid-template-columns:1fr}
  .lb-rank,.lb-xp{grid-column:1/-1}
  .lb-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .lb-tabs button{padding:0 6px;font-size:11px}
}

/* v5: шапка профиля на телефоне — аватарка 92px по центру стоит на границе обложки и
   карточки (верхняя половина — на обложке, как в Discord/VK/Steam). Для этого в clip-path
   карточки — «окно» над центром: срезанные углы те же, а аватарка не обрезается.
   Под аватаркой по центру — ник, «Администрация», трофеи, описание и теги.
   Обложка выше (156px), чтобы аватарка не наезжала на кнопки «Оформить» / «Поделиться». */
@media (max-width:760px){
  .lb-stage.pl-cover{height:156px}
  .lb-player{padding-top:14px;clip-path:polygon(var(--cut) 0,calc(50% - 78px) 0,calc(50% - 78px) -140px,calc(50% + 78px) -140px,calc(50% + 78px) 0,100% 0,100% calc(100% - var(--cut)),calc(100% - var(--cut)) 100%,0 100%,0 var(--cut))}
  .lb-id{--av:92px;grid-template-columns:minmax(0,1fr);justify-items:center;row-gap:8px;text-align:center}
  .lb-id__txt{display:grid;justify-items:center;gap:8px;min-width:0;max-width:100%}
  .lb-id__ava{position:relative;grid-row:auto;margin-top:calc(-20px - var(--av) / 2);padding:6px}
  .lb-id__ava::after{content:"";position:absolute;inset:-14px;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,color-mix(in srgb,var(--ac,#f5c451) 30%,transparent),transparent 80%);pointer-events:none}
  .lb-id .pl-ava{width:var(--av);height:var(--av)}
  .lb-id .pl-ava__pic{border-width:3px;border-radius:25px;box-shadow:0 14px 30px -10px rgb(0 0 0 / .95)}
  .lb-id .pl-ava__pic b{font-size:40px}
  .lb-id .pl-ava__ring,.lb-id .pl-ava::before{inset:-5px;border-radius:30px}
  .lb-id .pl-ava__lvl{right:-9px;bottom:-7px;min-width:30px;height:30px;padding:0 5px;border-width:3px;border-radius:10px;font-size:13px}
  .lb-id .lb-name,.lb-id .lb-staff,.lb-id .pl-badges{grid-column:auto;grid-row:auto;justify-self:center;align-self:auto;max-width:100%}
  .lb-id:not(:has(.lb-staff)) .lb-name{grid-row:auto;align-self:auto}
  .lb .lb-name{font-size:26px;line-height:1.05}
  .lb .lb-bio{justify-self:center;max-width:34ch;text-align:center}
  .lb-xp__top span{letter-spacing:.02em}
  .lb-tags>:first-child{margin-left:auto}
  .lb-tags>:last-child{margin-right:auto}
}
@media (max-width:340px){
  .lb-id{--av:84px}
  .lb .lb-name{font-size:24px}
}
