/* Профиль: широкое окно, сетка, объединённая статистика, автоматическое время, рефералы */

#profileModal .modal.pfModal{ width:min(1240px,100%); max-height:min(92vh,980px); }

#profileModal [hidden]{ display:none !important; }

/* сетка из 12 колонок */
#profileModal .modalBody.pfBody{
  display:grid;
  grid-template-columns:repeat(12, minmax(0,1fr));
  gap:14px;
  align-items:start;
}
#profileModal .modalBody.pfBody > *{ grid-column:1 / -1; margin:0; }
#profileModal .modalBody.pfBody > #pfStats{ grid-column:span 8; }
#profileModal .modalBody.pfBody > #pfTime{ grid-column:span 4; }
#profileModal .modalBody.pfBody > #referralBlock{ grid-column:span 6; }
#profileModal .modalBody.pfBody > #storeHistoryBlock{ grid-column:span 6; }
@media (max-width: 980px){
  #profileModal .modalBody.pfBody > #pfStats,
  #profileModal .modalBody.pfBody > #pfTime,
  #profileModal .modalBody.pfBody > #referralBlock,
  #profileModal .modalBody.pfBody > #storeHistoryBlock{ grid-column:1 / -1; }
}

/* для гостей блок входа важнее всего — поднимаем наверх */
.pfNotice{
  order:-1;
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(229,160,45,.5);
  background:rgba(229,160,45,.09);
  font-size:14px; line-height:1.5;
}
.pfNotice b{ font-weight:800; }

/* ---- краткая статистика ---- */
.pfHero{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:12px;
  margin-top:8px;
}
@media (max-width:720px){ .pfHero{ grid-template-columns:1fr; } }
.pfHero .statCard .big{ font-size:30px; line-height:1.1; font-weight:900; margin-top:4px; letter-spacing:-.01em; }
.pfHero .statCard .big.sm{ font-size:22px; }

.pfCharts{
  display:grid;
  grid-template-columns:minmax(0,3fr) minmax(0,2fr);
  gap:12px;
  margin-top:12px;
}
@media (max-width:720px){ .pfCharts{ grid-template-columns:1fr; } }

.pfBars{
  display:grid;
  grid-template-columns:repeat(14, minmax(0,1fr));
  gap:5px;
  align-items:end;
  height:130px;
  margin-top:10px;
}
.pfBarCol{ display:grid; grid-template-rows:1fr auto; gap:4px; height:100%; min-width:0; }
.pfBarWrap{ display:flex; align-items:flex-end; min-height:0; }
.pfBar{
  width:100%;
  min-height:3px;
  border-radius:6px 6px 3px 3px;
  background:linear-gradient(180deg, #F0B94A, #C6841A);
  transition:height .5s cubic-bezier(.22,1,.36,1);
}
.pfBar.zero{ background:rgba(255,255,255,.12); }
.pfBar.today{ background:linear-gradient(180deg, #C9D43A, #8FA21E); }
.pfBarLbl{ font-size:10.5px; text-align:center; color:var(--muted2); line-height:1; }
[data-theme="light"] .pfBar.zero{ background:rgba(0,0,0,.12); }

.pfDinoRow{ margin-top:10px; }
.pfDinoRow:first-child{ margin-top:6px; }
.pfDinoHead{ display:flex; justify-content:space-between; gap:8px; font-size:13px; font-weight:700; }
.pfDinoHead span:last-child{ color:var(--muted2); font-weight:600; white-space:nowrap; }
.pfDinoTrack{ height:7px; border-radius:999px; background:rgba(255,255,255,.1); overflow:hidden; margin-top:5px; }
.pfDinoTrack i{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#5FC0CF,#C9D43A); transition:width .5s ease; }
[data-theme="light"] .pfDinoTrack{ background:rgba(0,0,0,.1); }
.pfEmpty{ font-size:13px; color:var(--muted); line-height:1.5; margin-top:8px; }

/* ---- время в игре ---- */
.pfLive{
  display:flex; align-items:center; gap:12px;
  padding:12px 14px;
  margin-top:8px;
  border-radius:16px;
  border:1px solid var(--border);
  background:rgba(0,0,0,.14);
}
.pfLive.on{ border-color:rgba(201,212,58,.6); background:rgba(201,212,58,.08); }
.pfLive b{ display:block; font-size:15px; font-weight:800; }
.pfLive small{ display:block; font-size:12.5px; color:var(--muted); margin-top:2px; line-height:1.4; }
.pfDot{
  width:12px; height:12px; flex:none; border-radius:50%;
  background:rgba(255,255,255,.3);
}
.pfLive.on .pfDot{ background:#C9D43A; box-shadow:0 0 0 0 rgba(201,212,58,.6); animation:pfPulse 1.8s ease-out infinite; }
@keyframes pfPulse{ 0%{ box-shadow:0 0 0 0 rgba(201,212,58,.55); } 100%{ box-shadow:0 0 0 12px rgba(201,212,58,0); } }
@media (prefers-reduced-motion: reduce){ .pfLive.on .pfDot{ animation:none; } }

.pfTimeGrid{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:12px; }
.pfTile{
  padding:10px 12px;
  border-radius:14px;
  border:1px solid var(--border);
  background:rgba(0,0,0,.12);
}
.pfTile span{ display:block; font-size:11px; font-weight:800; letter-spacing:.07em; text-transform:uppercase; color:var(--muted2); }
.pfTile b{ display:block; font-size:19px; font-weight:900; margin-top:3px; font-variant-numeric:tabular-nums; }
.pfTile.wide{ grid-column:1 / -1; }

/* ---- реферальная система ---- */
.refBox{ display:grid; gap:12px; margin-top:8px; }
.refRow{ display:flex; gap:8px; align-items:end; flex-wrap:wrap; }
.refRow .field{ flex:1; min-width:200px; }
.refStats{ display:flex; flex-wrap:wrap; gap:10px; }
.refPill{
  padding:8px 12px;
  border-radius:12px;
  border:1px solid var(--border);
  background:rgba(0,0,0,.12);
  font-size:13px;
}
.refPill b{ font-weight:900; }
.refGuest{
  display:grid; gap:10px;
  padding:12px 14px;
  margin-top:8px;
  border-radius:16px;
  border:1px solid rgba(229,160,45,.45);
  background:rgba(229,160,45,.08);
  font-size:13.5px; line-height:1.5;
}
.refGuest .steamBtn{ justify-self:start; }
