/* ============================================================
   ICF360v2 — Стили
   Тёмная тема, фиолетовые акценты
   ============================================================ */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html, body { min-height: 100vh; }
body { background: #0f0f13; color: #c8c8d0; font-family: 'Segoe UI', system-ui, sans-serif; font-size: 15px; }
a { color: #9b72f5; text-decoration: none; }
a:hover { text-decoration: underline; }

/* ── Header ── */
/* Задачи A, B, C: sticky хедер, логотип, кнопки навигации */
.header-wrap {
  position: sticky; top: 0; z-index: 200;
  background: #16161e; border-bottom: 1px solid #2a2a3a;
}
.header {
  display: flex; justify-content: space-between; align-items: center;
  padding: 12px 28px;
  position: relative;
}
.header-left  { display:flex; align-items:center; gap:12px; }
.header-right { display:flex; align-items:center; gap:10px; color:#9090a8; font-size:14px; }
/* Центр хедера — Back to Slots по середине */
.header-center {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
}
.header-logo-text { font-size:17px; font-weight:700; color:#e0e0f0; letter-spacing:1px; }
/* Логотип сайта */
.header-logo-img  { width:40px; height:40px; border-radius:8px; object-fit:contain; display:block; }
.header-logo-link { display:flex; align-items:center; line-height:0; }
.header-logo-link:hover { opacity:.85; }
/* Полоска навигации под основным хедером (только slot.php) */
.header-nav {
  display: none; /* убрана отдельная строка — навигация в основном хедере */
}
/* Таблетки навигации (← Back to Slots, About) */
.nav-pill {
  display: inline-flex; align-items: center; gap: 5px;
  padding: 3px 12px; border-radius: 20px;
  border: 1px solid #3a3a50; background: #1e1e2a;
  color: #9090a8; font-size: 12px; font-weight: 500;
  cursor: pointer; text-decoration: none;
  transition: border-color .18s, color .18s, background .18s;
  white-space: nowrap;
}
.nav-pill:hover { border-color:#7c3aed; color:#c4b5fd; background:#2a1e4a; text-decoration:none; }
.nav-pill-back { }
.nav-pill-about { }
/* Устаревший .back-link — оставляем для совместимости */
.back-link { color:#9090a8; font-size:14px; }
.btn-logout {
  background:#2a2a3a; color:#c8c8d0; border:1px solid #3a3a50;
  border-radius:6px; padding:5px 13px; font-size:13px; cursor:pointer; transition:background .2s;
}
.btn-logout:hover { background:#3a3a50; }
/* Кнопка "← Back to Slots" внизу страницы */
.back-to-slots-block { margin-top: 4px; }
.back-to-slots-block .btn-secondary { width:100%; display:block; text-align:center; }

/* ── Container ── */
.container { max-width:600px; margin:0 auto; padding:6px 16px 20px; }
.page-title { font-size:20px; font-weight:600; color:#e0e0f0; margin-bottom:20px; }

/* ── Auth (index.php) ── */
.page-center { display:flex; flex-direction:column; align-items:center;
  justify-content:center; min-height:100vh; padding:20px; }
.logo-block { text-align:center; margin-bottom:28px; }
.logo-icon { font-size:48px; margin-bottom:4px; }
.logo-title { font-size:28px; font-weight:700; color:#e0e0f0; letter-spacing:2px; }
.logo-sub { font-size:12px; letter-spacing:3px; color:#606078; margin-top:4px; }
.auth-card { background:#16161e; border:1px solid #2a2a3a; border-radius:14px;
  padding:28px; width:100%; max-width:400px; }
.auth-tabs { display:flex; gap:4px; margin-bottom:20px; }
.auth-tab { flex:1; padding:8px; background:#2a2a3a; border:none; border-radius:6px;
  color:#9090a8; cursor:pointer; font-size:14px; transition:all .2s; }
.auth-tab.active { background:#7c3aed; color:#fff; }
.footer-links { margin-top:20px; font-size:13px; color:#606078; }

/* ── Forms ── */
.form-group { margin-bottom:14px; }
.form-group label { display:block; font-size:13px; color:#9090a8; margin-bottom:6px; }
.form-input { width:100%; padding:10px 14px; background:#1e1e2a; border:1px solid #3a3a50;
  border-radius:8px; color:#e0e0f0; font-size:14px; outline:none; transition:border .2s; }
.form-input:focus { border-color:#7c3aed; }
.w100 { width:100%; }

/* ── Buttons ── */
.btn-primary { background:#7c3aed; color:#fff; border:none; border-radius:8px;
  padding:12px 24px; font-size:15px; font-weight:600; cursor:pointer; transition:background .2s; }
.btn-primary:hover { background:#6d28d9; }
.btn-primary:disabled { background:#3a3a50; cursor:not-allowed; }
.btn-secondary { background:#2a2a3a; color:#c8c8d0; border:1px solid #3a3a50;
  border-radius:8px; padding:10px 20px; font-size:14px; cursor:pointer; transition:background .2s; }
.btn-secondary:hover { background:#3a3a50; }
.btn-start { width:100%; background:#7c3aed; color:#fff; border:none; border-radius:12px;
  padding:16px; font-size:22px; font-weight:700; cursor:pointer; transition:background .2s; letter-spacing:0.5px; }
.btn-start:hover:not(:disabled) { background:#6d28d9; }
.btn-start:disabled { background:#2a2a3a; color:#606078; cursor:not-allowed; }

/* ── Messages ── */
.msg { min-height:20px; font-size:13px; margin-bottom:10px; border-radius:6px;
  padding:0; transition:all .2s; }
.msg-ok    { color:#4ade80; }
.msg-error { color:#f87171; }

/* ── Slots grid (cabinet.php) ── */
.slots-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:16px; }
.slot-card { background:#16161e; border:1px solid #2a2a3a; border-radius:14px;
  padding:20px; cursor:pointer; transition:border-color .2s, transform .1s; }
.slot-card:hover { border-color:#7c3aed; transform:translateY(-2px); }
.slot-card.slot-paused { opacity:.6; cursor:default; }
.slot-card-header { display:flex; justify-content:space-between; align-items:center;
  margin-bottom:10px; }
.slot-num { font-size:12px; color:#606078; }
.slot-card-name { font-size:16px; font-weight:600; color:#e0e0f0; margin-bottom:12px; }
.slot-coins { display:flex; align-items:center; gap:6px; margin-bottom:10px; flex-wrap:wrap; }
.coin-tag { padding:3px 10px; border-radius:20px; font-size:12px; font-weight:600; }
.coin-tag.stake { background:#1e293b; color:#94a3b8; border:1px solid #334155; }
.coin-tag.claim { background:#1e1b3a; color:#a78bfa; border:1px solid #4c1d95; }
.coin-sep { color:#606078; font-size:14px; }
.slot-card-info { font-size:12px; color:#606078; display:flex; gap:12px; margin-bottom:8px; }
.slot-node-status { font-size:12px; }

/* ── Badges ── */
.badge { padding:3px 10px; border-radius:20px; font-size:11px; font-weight:600; }
.badge-ready  { background:#1e3a2a; color:#4ade80; border:1px solid #16a34a; }
.badge-active { background:#1e1b3a; color:#a78bfa; border:1px solid #7c3aed; }
.badge-paused { background:#3a1e1e; color:#f87171; border:1px solid #dc2626; }

/* ── Node status ── */
.node-ok      { color:#4ade80; }
.node-offline { color:#f87171; }

/* ── Claim Card (slot.php) ── */
.claim-card { background:#16161e; border:1px solid #2a2a3a; border-radius:14px;
  padding:6px 10px 4px; margin-bottom:6px; }
.claim-card-header { display:flex; justify-content:space-between; align-items:center;
  margin-bottom:8px; }
.slot-label { font-size:12px; color:#606078; }
.slot-name-label { font-size:16px; font-weight:600; color:#e0e0f0; }
.coins-row { display:flex; align-items:center; justify-content:center;
  gap:10px; flex-wrap:wrap; margin-bottom:16px; }
.coin-block { text-align:center; min-width:80px; }
.coin-block.coin-claim { min-width:90px; }
.coin-name   { font-size:13px; font-weight:700; color:#e0e0f0; margin-bottom:4px; }
.coin-amount { font-size:20px; font-weight:700; color:#a78bfa; margin-bottom:2px; }
.coin-label  { font-size:11px; color:#606078; margin-bottom:2px; }
.coin-fee    { font-size:11px; color:#9090a8; }
.coin-plus, .coin-arrow { font-size:20px; color:#606078; font-weight:300; }

/* ── Node bar ── */
.node-bar { display:flex; justify-content:center; gap:6px; padding-top:4px;
  border-top:1px solid #2a2a3a; flex-wrap:wrap; }
.node-chip { padding:2px 9px; border-radius:20px; font-size:13px; font-weight:600;
  background:#1e1e2a; border:1px solid #2a2a3a; display:flex; align-items:center; gap:4px; }
.node-chip.node-ok      { border-color:#16a34a; color:#4ade80; }
.node-chip.node-offline { border-color:#dc2626; color:#f87171; }

/* ── Paused banner ── */
.paused-banner { background:#3a1e1e; border:1px solid #dc2626; border-radius:10px;
  padding:7px 12px; margin-bottom:6px; color:#f87171; font-size:13px; text-align:center; }

/* ── Mode bar ── */
.mode-bar { display:flex; gap:5px; justify-content:center; margin-bottom:6px; flex-wrap:wrap; margin-top:0px; }
.mult-btn { background:#2a2a3a; color:#9090a8; border:1px solid #3a3a50;
  border-radius:8px; padding:5px 14px; font-size:15px; font-weight:600;
  cursor:pointer; transition:all .2s; }
.mult-btn:hover  { border-color:#7c3aed; color:#e0e0f0; }
.mult-btn.active { background:#7c3aed; border-color:#7c3aed; color:#fff; }

/* ── Section cards ── */
.section-card { background:#16161e; border:1px solid #2a2a3a; border-radius:14px;
  padding:8px 12px; margin-bottom:6px; }
.section-title { font-size:14px; font-weight:600; color:#9090a8;
  text-transform:uppercase; letter-spacing:1px; margin-bottom:5px; cursor:pointer; }
.collapsible summary { list-style:none; }
.collapsible summary::-webkit-details-marker { display:none; }
.collapsible[open] .section-title { color:#a78bfa; }

/* ── Cycle status ── */
.cycle-status-block { background:#16161e; border:1px solid #2a2a3a; border-radius:10px;
  padding:5px 10px; margin-bottom:6px; }
.cycle-status-row { display:flex; gap:10px; margin-bottom:1px; font-size:15px; }
.cycle-status-label { color:#606078; min-width:90px; }
.cycle-status-val { color:#a78bfa; font-weight:600; text-transform:capitalize; }
.txid { font-family:monospace; font-size:11px; color:#9090a8; word-break:break-all; }

/* ── Deposit addresses ── */
.deposit-row { display:flex; flex-direction:column; gap:8px; }
.deposit-item {
  width:100%;
  display:flex; flex-direction:column; gap:0;
}
.deposit-label { font-size:12px; color:#606078; margin-bottom:3px; }
/* Строка: [плашка статуса] [адрес] в одну линию */
.deposit-item .deposit-status-box {
  order: 1;
  flex-shrink: 0;
  align-self: center;
}
.deposit-item .deposit-addr {
  order: 2;
  flex: 1;
}
/* Враппер для статус+адрес в одну строку */
.deposit-item { flex-direction:column; }
.deposit-addr-row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.deposit-addr { font-family:monospace; font-size:13px; color:#9090a8; cursor:pointer;
  white-space:nowrap; overflow:hidden; padding:4px 7px; background:#0f0f13; border-radius:6px;
  border:1px solid #2a2a3a; transition:border .2s; flex:1; margin-bottom:0; }
.deposit-addr:hover { border-color:#7c3aed; }
.deposit-status-box { display:inline-flex; align-items:center; padding:4px 10px; border-radius:20px;
  font-size:12px; font-weight:600; cursor:pointer; transition:all .2s; white-space:nowrap; flex-shrink:0; }
.status-ok    { background:#1e3a2a; color:#4ade80; border:1px solid #16a34a; }
.status-low   { background:#3a1e1e; color:#f87171; border:1px solid #dc2626; }
.status-cycle { background:#1e1b3a; color:#fbbf24; border:1px solid #92400e; }

/* ── Start block ── */
.start-block { text-align:center; }
.start-hint { font-size:11px; color:#606078; margin-top:3px; min-height:14px; }

/* ── Admin toggle switch ── */
.toggle-switch { position:relative; display:inline-block; width:44px; height:24px; }
.toggle-switch input { opacity:0; width:0; height:0; }
.toggle-slider { position:absolute; cursor:pointer; inset:0; background:#2a2a3a;
  border-radius:24px; transition:.3s; border:1px solid #3a3a50; }
.toggle-slider:before { position:absolute; content:''; height:16px; width:16px;
  left:3px; bottom:3px; background:#606078; border-radius:50%; transition:.3s; }
.toggle-switch input:checked + .toggle-slider { background:#7c3aed; border-color:#7c3aed; }
.toggle-switch input:checked + .toggle-slider:before { transform:translateX(20px); background:#fff; }

/* ── Addr form ── */
.addr-form { padding-top:14px; }

/* ── Responsive ── */
@media(max-width:480px){
  .header { padding:10px 14px; }
  .container { padding:16px 10px 40px; }
  .coins-row { gap:6px; }
  .coin-amount { font-size:16px; }
  .slots-grid { grid-template-columns:1fr; }
}

/* ── Showcase (index.php витрина) ── */
.showcase-title { margin-bottom:24px; }
.showcase-sub { color:#606078; font-size:14px; margin-top:4px; }

.slot-card { position:relative; overflow:hidden; }
.slot-lock-overlay {
  position:absolute; inset:0;
  background:rgba(15,15,19,0.7);
  display:flex; flex-direction:column;
  align-items:center; justify-content:center;
  opacity:0; transition:opacity .2s;
  border-radius:14px;
}
.slot-card:hover .slot-lock-overlay { opacity:1; }
.slot-lock-icon { font-size:28px; margin-bottom:6px; }
.slot-lock-text { font-size:13px; color:#a78bfa; font-weight:600; }

/* ── Modal ── */
.modal-overlay {
  display:none; position:fixed; inset:0;
  background:rgba(0,0,0,0.7);
  z-index:1000; align-items:center; justify-content:center;
  backdrop-filter:blur(4px);
}
.modal-overlay.active { display:flex; }
.modal-box {
  background:#16161e; border:1px solid #2a2a3a;
  border-radius:16px; padding:28px;
  width:100%; max-width:420px;
  position:relative; max-height:90vh; overflow-y:auto;
  animation:modalIn .2s ease;
}
@keyframes modalIn {
  from { transform:scale(.95); opacity:0; }
  to   { transform:scale(1);   opacity:1; }
}
.modal-close {
  position:absolute; top:14px; right:16px;
  background:none; border:none; color:#606078;
  font-size:18px; cursor:pointer; line-height:1;
  transition:color .2s;
}
.modal-close:hover { color:#e0e0f0; }

/* ── Header buttons ── */
.btn-primary-sm {
  background:#7c3aed; color:#fff; border:none;
  border-radius:6px; padding:6px 14px;
  font-size:13px; font-weight:600; cursor:pointer;
  transition:background .2s;
}
.btn-primary-sm:hover { background:#6d28d9; }

/* ── Captcha wrap ── */
.captcha-wrap { display:flex; justify-content:center; margin:8px 0; }

/* ── Profitability block ── */
.profit-header {
  display:flex; justify-content:space-between; align-items:center;
  margin-bottom:5px; flex-wrap:wrap; gap:4px;
}
.profit-badge-wrap { display:flex; align-items:center; gap:8px; }
.profit-badge {
  font-size:20px; font-weight:700; padding:4px 12px;
  border-radius:8px; letter-spacing:1px; transition:all .3s;
}
.profit-pos {
  color:#4ade80; background:#1e3a2a; border:2px solid #16a34a;
}
.profit-neg {
  color:#f87171; background:#3a1e1e; border:2px solid #dc2626;
}
.profit-mult-label { font-size:14px; color:#606078; }
.profit-row {
  display:flex; gap:5px; flex-wrap:wrap;
}
.profit-item {
  flex:1; min-width:100px; background:#1e1e2a;
  border-radius:8px; padding:4px 8px; text-align:center;
  border:1px solid #2a2a3a;
}
.profit-label { font-size:14px; color:#606078; margin-bottom:5px;
  text-transform:uppercase; letter-spacing:1px; }
.profit-val { font-size:17px; font-weight:700; font-family:monospace; }
.profit-val.green { color:#4ade80; }
.profit-val.red   { color:#f87171; }
.profit-hint { font-size:10px; color:#606078; margin-top:6px; }

/* ── Lock banner ── */
.lock-banner {
  background:#1e1b3a; border:1px solid #7c3aed; border-radius:10px;
  padding:7px 12px; margin-bottom:6px; color:#a78bfa;
  font-size:13px; text-align:center;
}

/* ============================================================
   Задача 5 — Новые блоки
   ============================================================ */

/* ── Футер ── */
.site-footer {
  margin-top: 40px;
  padding: 24px 20px 20px;
  border-top: 1px solid #2a2a3a;
  text-align: center;
}
.footer-social {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 18px;
  margin-bottom: 14px;
}
.footer-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px; height: 40px;
  background: #1e1e2a;
  border: 1px solid #2a2a3a;
  border-radius: 10px;
  transition: border-color .2s, background .2s;
  opacity: .8;
}
.footer-social a:hover {
  border-color: #7c3aed;
  background: #2a2040;
  opacity: 1;
  text-decoration: none;
}
.footer-social img { width: 48px; height: 48px; display: block; }
.footer-disclaimer {
  font-size: 11px;
  color: #606078;
  line-height: 1.6;
  max-width: 520px;
  margin: 0 auto 10px;
}
.footer-copy {
  font-size: 12px;
  color: #3a3a50;
}

/* ── Coin logo в карточках ── */
.slot-card-visual {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 14px;
  flex-wrap: wrap;
}
.slot-coin-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  min-width: 64px;
}
.slot-coin-block.claim-block { min-width: 80px; }
.slot-coin-logo {
  width: 48px; height: 48px;
  border-radius: 50%;
  background: #1e1e2a;
  border: 1px solid #2a2a3a;
  object-fit: contain;
  padding: 4px;
}
.slot-coin-logo.logo-lg {
  width: 64px; height: 64px;
  padding: 6px;
}
.slot-coin-fallback {
  width: 48px; height: 48px;
  border-radius: 50%;
  background: #1e1e2a;
  border: 1px solid #2a2a3a;
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; font-weight: 700; color: #9090a8;
}
.slot-coin-fallback.logo-lg {
  width: 64px; height: 64px;
  font-size: 16px;
}
.slot-coin-badge {
  padding: 2px 9px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 700;
  border: 1px solid #334155;
  white-space: nowrap;
}
.slot-coin-amount {
  font-size: 12px;
  color: #9090a8;
  font-weight: 600;
}
.slot-coin-sep {
  font-size: 22px;
  color: #3a3a50;
  font-weight: 300;
  margin: 0 2px;
  align-self: center;
}
.slot-profit-row {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin: 10px 0 12px;
}
.slot-profit-badge {
  font-size: 15px;
  font-weight: 800;
  padding: 3px 12px;
  border-radius: 8px;
  letter-spacing: .5px;
}
.slot-profit-pos { color: #4ade80; background: #1e3a2a; border: 1px solid #16a34a; }
.slot-profit-neg { color: #f87171; background: #3a1e1e; border: 1px solid #dc2626; }

/* ── Enter Slot кнопка ── */
.btn-enter-slot {
  display: block;
  width: 100%;
  background: #7c3aed;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 10px;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
  text-align: center;
  transition: background .2s;
  margin-top: 6px;
}
.btn-enter-slot:hover { background: #6d28d9; text-decoration: none; }
.slot-card.slot-paused .btn-enter-slot { background: #2a2a3a; color: #606078; cursor: default; }

/* ── Памятка (hint popup) ── */
.hint-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px; height: 22px;
  background: #2a2a3a;
  border: 1px solid #3a3a50;
  border-radius: 50%;
  font-size: 12px;
  font-weight: 700;
  color: #9090a8;
  cursor: pointer;
  transition: all .2s;
  flex-shrink: 0;
  line-height: 1;
  vertical-align: middle;
}
.hint-btn:hover { background: #3a2a5a; border-color: #7c3aed; color: #a78bfa; }

.hint-modal .modal-box {
  max-width: 480px;
}
.hint-langs {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-bottom: 14px;
}
.hint-lang-btn {
  background: #2a2a3a;
  border: 1px solid #3a3a50;
  border-radius: 6px;
  color: #9090a8;
  font-size: 12px;
  padding: 4px 10px;
  cursor: pointer;
  transition: all .2s;
}
.hint-lang-btn.active {
  background: #3a2a5a;
  border-color: #7c3aed;
  color: #a78bfa;
}
.hint-content {
  font-size: 14px;
  color: #c8c8d0;
  line-height: 1.7;
}
.hint-title {
  font-size: 15px;
  font-weight: 700;
  color: #e0e0f0;
  margin-bottom: 10px;
}

/* ── Network fee label ── */
.network-fee-label {
  font-size: 11px;
  color: #606078;
  margin-top: 2px;
}

/* ── Секция заголовок с кнопкой ── */
.section-title-row {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
}
.section-title-row .section-title {
  margin-bottom: 0;
}

/* ── Lock countdown ── */
.lock-countdown {
  font-variant-numeric: tabular-nums;
  font-weight: 700;
  color: #a78bfa;
}

/* ── Адреса: hCaptcha wrap ── */
.addr-captcha-wrap {
  display: flex;
  justify-content: flex-start;
  margin: 8px 0;
}

/* ── Last cycle info ── */
.last-cycle-row {
  display: flex;
  gap: 8px;
  font-size: 13px;
  margin-bottom: 4px;
}
.last-cycle-label { color: #606078; min-width: 90px; }
.last-cycle-val   { color: #c8c8d0; word-break: break-all; font-family: monospace; font-size: 12px; }

/* ── Index page showcase ── */
.index-hero {
  text-align: center;
  padding: 32px 0 16px;
}
.index-hero-icon { font-size: 52px; margin-bottom: 10px; }
.index-hero-title {
  font-size: 30px;
  font-weight: 800;
  color: #e0e0f0;
  letter-spacing: 2px;
  margin-bottom: 6px;
}
.index-hero-sub {
  font-size: 13px;
  color: #606078;
  letter-spacing: 2px;
  text-transform: uppercase;
}

/* ============================================================
   v2 — Переработка карточки монет (старый макет)
   ============================================================ */

/* ── Claim card inner (3 колонки: left | center | right) ── */
.claim-card-inner {
  display: flex;
  align-items: stretch;
  min-height: 100px;
}

/* Боковые секторы */
.claim-sector {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 6px 6px;
  gap: 2px;
  background: #1a1a26;
}
.sector-left  { border-right: 1px solid #2a2a3a; border-radius: 14px 0 0 14px; }
.sector-right { border-left:  1px solid #2a2a3a; border-radius: 0 14px 14px 0; }

/* Центр — claim */
.claim-center {
  width: 110px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: #1e1e2e;
  gap: 2px;
  padding: 6px 6px;
}

/* Картинки монет */
.coin-img-side {
  display: block;
  width: 56px; height: 56px;
  border-radius: 50%;
  object-fit: contain;
  box-shadow: 0 0 10px rgba(124,58,237,0.3);
  margin-bottom: 2px;
}
.coin-img-center {
  display: block;
  width: 72px; height: 72px;
  border-radius: 50%;
  object-fit: contain;
  box-shadow: 0 0 16px rgba(167,139,250,0.35);
  margin-bottom: 2px;
}
.coin-fallback-side {
  width: 56px; height: 56px;
  border-radius: 50%;
  background: #2a2a3a;
  border: 1px solid #3a3a50;
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; font-weight: 800; color: #9090a8;
  margin-bottom: 2px;
}
.coin-fallback-center {
  width: 72px; height: 72px;
  border-radius: 50%;
  background: #2a2040;
  border: 1px solid #7c3aed44;
  display: flex; align-items: center; justify-content: center;
  font-size: 15px; font-weight: 800; color: #a78bfa;
  margin-bottom: 2px;
}

/* Плашки монет */
.coin-badge-side {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 1px;
  padding: 3px 10px;
  border-radius: 20px;
  border: 1px solid #33415555;
}
.coin-badge-center {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2px;
  padding: 4px 12px;
  border-radius: 20px;
  border: 1px solid #55443388;
}

/* Подписи */
.coin-required-label {
  font-size: 11px;
  color: #4a4a60;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin-bottom: -2px;
}
.coin-amount-side {
  font-size: 21px;
  font-weight: 700;
  color: #e0e0f0;
}
.coin-fee-label {
  font-size: 13px;
  color: #606078;
}
.coin-stake-label {
  font-size: 11px;
  font-weight: 700;
  color: #4a4a60;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.claim-reward-amount {
  font-size: 29px;
  font-weight: 800;
  color: #ffffff;
}
.claim-reward-label {
  font-size: 12px;
  font-weight: 700;
  color: #606078;
  text-transform: uppercase;
  letter-spacing: 1.5px;
}

/* ── Карточки слотов (index/cabinet) — переработка ── */
.slot-card-visual-v2 {
  display: flex;
  align-items: stretch;
  background: #16161e;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 12px;
  border: 1px solid #2a2a3a;
  min-height: 120px;
}
.scard-side {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 12px 6px;
  gap: 4px;
  background: #1a1a26;
}
.scard-left  { border-right: 1px solid #2a2a3a; }
.scard-right { border-left:  1px solid #2a2a3a; }
.scard-center {
  width: 100px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 12px 4px;
  background: #1e1e2e;
  gap: 3px;
}
.scard-coin-img {
  width: 40px; height: 40px;
  border-radius: 50%;
  object-fit: contain;
  box-shadow: 0 0 8px rgba(124,58,237,0.3);
}
.scard-coin-img-center {
  width: 54px; height: 54px;
  border-radius: 50%;
  object-fit: contain;
  box-shadow: 0 0 14px rgba(167,139,250,0.4);
}
.scard-fallback {
  width: 40px; height: 40px;
  border-radius: 50%;
  background: #2a2a3a;
  display: flex; align-items: center; justify-content: center;
  font-size: 11px; font-weight: 800; color: #9090a8;
}
.scard-fallback-center {
  width: 54px; height: 54px;
  border-radius: 50%;
  background: #2a2040;
  display: flex; align-items: center; justify-content: center;
  font-size: 13px; font-weight: 800; color: #a78bfa;
}
.scard-badge {
  font-size: 10px;
  font-weight: 800;
  padding: 2px 8px;
  border-radius: 20px;
  letter-spacing: 0.5px;
  border: 1px solid #33415555;
  white-space: nowrap;
}
.scard-amount {
  font-size: 11px;
  color: #9090a8;
  font-weight: 600;
  text-align: center;
}
.scard-sublabel {
  font-size: 8px;
  color: #4a4a60;
  text-transform: uppercase;
  letter-spacing: 0.8px;
}
.scard-reward-amount {
  font-size: 16px;
  font-weight: 800;
  color: #e0e0f0;
  text-align: center;
}
.scard-reward-label {
  font-size: 8px;
  font-weight: 700;
  color: #606078;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* ── Профит в карточке слота ── */
.scard-profit {
  text-align: center;
  margin-bottom: 10px;
}
.scard-profit-badge {
  font-size: 16px;
  font-weight: 800;
  padding: 4px 14px;
  border-radius: 8px;
  display: inline-block;
  letter-spacing: .5px;
}
.scard-profit-pos { color: #4ade80; background: #1e3a2a; border: 1px solid #16a34a; }
.scard-profit-neg { color: #f87171; background: #3a1e1e; border: 1px solid #dc2626; }
.scard-profit-sub {
  font-size: 10px;
  color: #606078;
  margin-top: 3px;
}

/* ── Кнопка памятки — красная ── */
.hint-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 22px; height: 22px;
  background: #3a1e1e;
  border: 1px solid #dc2626;
  border-radius: 50%;
  font-size: 12px;
  font-weight: 800;
  color: #f87171;
  cursor: pointer;
  transition: all .2s;
  flex-shrink: 0;
  line-height: 1;
  vertical-align: middle;
}
.hint-btn:hover { background: #dc2626; color: #fff; border-color: #f87171; }

/* ── Футер — копирайт заметнее ── */
.footer-copy {
  font-size: 13px;
  font-weight: 700;
  color: #c8c8d0;
  margin-top: 6px;
}

/* ── Адаптив ── */
@media (max-width: 480px) {
  .claim-center { width: 100px; }
  .coin-img-center { width: 56px; height: 56px; }
  .coin-img-side  { width: 40px; height: 40px; }
  .scard-center { width: 80px; }
  .scard-coin-img-center { width: 44px; height: 44px; }
}

/* ══════════════════════════════════════════════════════════════
   Задача C — Info Modal (About / справка о проекте)
   ══════════════════════════════════════════════════════════════ */
.info-modal .modal-box {
  max-width: 560px;
  max-height: 80vh;
}
.info-modal-title {
  font-size: 17px; font-weight: 700; color: #e0e0f0;
  margin-bottom: 14px; padding-bottom: 10px;
  border-bottom: 1px solid #2a2a3a;
}
.info-modal-langs {
  display: flex; flex-wrap: wrap; gap: 6px;
  margin-bottom: 14px;
}
.info-modal-content {
  font-size: 14px; color: #c8c8d0; line-height: 1.7;
  white-space: pre-line;
}
.info-modal-content strong,
.info-modal-content b {
  color: #e0e0f0; font-weight: 600;
}

/* ══════════════════════════════════════════════════════════════
   Responsive — обновление для sticky header
   ══════════════════════════════════════════════════════════════ */
@media(max-width:480px){
  .header { padding: 10px 14px; }
  .header-nav { padding: 5px 14px 6px; }
  .header-logo-text { font-size: 14px; }
  .header-logo-img { width: 34px; height: 34px; }
}

/* ══════════════════════════════════════════════════════════════
   Задача 13 — История клаймов
   ══════════════════════════════════════════════════════════════ */
.history-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
}
.history-table th {
  text-align: left;
  padding: 8px 10px;
  color: var(--text-muted);
  font-weight: 500;
  border-bottom: 1px solid var(--border);
  white-space: nowrap;
}
.history-table td {
  padding: 9px 10px;
  border-bottom: 1px solid rgba(255,255,255,0.04);
  vertical-align: middle;
}
.history-table tr:last-child td { border-bottom: none; }
.history-table tr:hover td { background: rgba(255,255,255,0.02); }
.history-profit-pos { color: #4ade80; }
.history-profit-neg { color: #f87171; }
.history-txid {
  font-family: monospace;
  font-size: 12px;
  color: var(--text-muted);
  cursor: pointer;
  border-bottom: 1px dashed var(--text-muted);
  padding-bottom: 1px;
}
.history-txid:hover { color: var(--accent-green); border-color: var(--accent-green); }
@media(max-width:600px){
  .history-table th:nth-child(5),
  .history-table td:nth-child(5),
  .history-table th:nth-child(6),
  .history-table td:nth-child(6) { display: none; }
}

/* Прижатые блоки — без лишних отступов */
.container.no-pad { padding-top: 0; padding-bottom: 4px; }

/* ══════════════════════════════════════════════════════════════
   I18N — Language Switcher
   ══════════════════════════════════════════════════════════════ */
.lang-switcher {
  position: relative;
  display: inline-block;
}
.lang-switcher-btn {
  background: rgba(255,255,255,0.07);
  border: 1px solid var(--border);
  color: var(--text-main);
  border-radius: 8px;
  padding: 5px 10px;
  font-size: 13px;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s;
  line-height: 1.4;
}
.lang-switcher-btn:hover {
  background: rgba(255,255,255,0.13);
}
.lang-dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  z-index: 999;
  background: var(--card-bg, #1a1f2e);
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 6px;
  min-width: 170px;
  max-height: 320px;
  overflow-y: auto;
  box-shadow: 0 8px 32px rgba(0,0,0,0.4);
  /* Сетка 2 колонки */
  display: none;
  flex-wrap: wrap;
  gap: 2px;
}
.lang-dropdown.open {
  display: flex;
}
.lang-option {
  display: flex;
  align-items: center;
  gap: 6px;
  width: calc(50% - 1px);
  padding: 6px 8px;
  border: none;
  background: transparent;
  color: var(--text-main);
  border-radius: 6px;
  font-size: 12px;
  cursor: pointer;
  text-align: left;
  transition: background 0.12s;
  white-space: nowrap;
}
.lang-option:hover {
  background: rgba(255,255,255,0.08);
}
.lang-option.active {
  background: rgba(74,222,128,0.12);
  color: var(--accent-green, #4ade80);
}
.lang-native {
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 80px;
}

/* RTL поддержка */
[dir="rtl"] .lang-dropdown {
  right: auto;
  left: 0;
}
[dir="rtl"] .header-left { flex-direction: row-reverse; }
[dir="rtl"] .header-right { flex-direction: row-reverse; }

@media(max-width:600px) {
  .lang-switcher-btn { padding: 4px 7px; font-size: 12px; }
  .lang-dropdown { min-width: 150px; right: -10px; }
}

/* ══════════════════════════════════════════════════════════════
   USER DROPDOWN MENU (header)
   ══════════════════════════════════════════════════════════════ */
.user-menu-wrap {
  position: relative;
  display: inline-block;
}
.user-menu-btn {
  background: #2a2a3a;
  border: 1px solid #3a3a50;
  color: #c8c8d0;
  border-radius: 6px;
  padding: 5px 13px;
  font-size: 13px;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.2s, border-color 0.2s;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  line-height: 1.4;
}
.user-menu-btn:hover {
  background: #3a3a50;
  border-color: #7c3aed;
  color: #e0e0f0;
}
.user-menu-wrap.open .user-menu-btn {
  border-color: #7c3aed;
  background: #3a3a50;
}
.user-menu-arrow {
  font-size: 9px;
  opacity: 0.55;
  transition: transform 0.2s;
  display: inline-block;
}
.user-menu-wrap.open .user-menu-arrow {
  transform: rotate(180deg);
}
.user-menu-dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  z-index: 1000;
  background: #1a1f2e;
  border: 1px solid #3a3a50;
  border-radius: 10px;
  padding: 5px;
  min-width: 170px;
  box-shadow: 0 8px 32px rgba(0,0,0,0.5);
  flex-direction: column;
  gap: 2px;
}
.user-menu-wrap.open .user-menu-dropdown {
  display: flex;
}
.user-menu-item {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border: none;
  background: transparent;
  color: #c8c8d0;
  border-radius: 7px;
  font-size: 13px;
  cursor: pointer;
  text-align: left;
  text-decoration: none;
  transition: background 0.12s;
  white-space: nowrap;
  width: 100%;
  box-sizing: border-box;
}
.user-menu-item:hover {
  background: rgba(255,255,255,0.08);
  color: #e0e0f0;
  text-decoration: none;
}
.user-menu-icon {
  font-size: 14px;
  min-width: 18px;
  text-align: center;
}
.user-menu-divider {
  height: 1px;
  background: #3a3a50;
  margin: 3px 5px;
}

/* RTL */
[dir="rtl"] .user-menu-dropdown { right: auto; left: 0; }

@media (max-width: 600px) {
  .user-menu-btn { padding: 4px 8px; font-size: 12px; }
  .user-menu-dropdown { min-width: 150px; right: -10px; }
  [dir="rtl"] .user-menu-dropdown { right: auto; left: -10px; }
}

/* ══════════════════════════════════════════════════════════════
   PROFILE PAGE
   ══════════════════════════════════════════════════════════════ */
.profile-wrap { max-width:760px; margin:30px auto; padding:0 16px; }
.profile-title { font-size:22px; font-weight:700; color:var(--text-main); margin-bottom:20px; }
.profile-tabs { display:flex; gap:6px; margin-bottom:20px; flex-wrap:wrap; }
.profile-tab-btn { padding:8px 18px; border:1px solid #3a3a50; border-radius:8px; background:transparent; color:#9090a8; font-size:13px; cursor:pointer; transition:all 0.15s; }
.profile-tab-btn:hover { background:rgba(255,255,255,0.07); color:#e0e0f0; }
.profile-tab-btn.active { background:rgba(124,58,237,0.18); border-color:#7c3aed; color:#c4b5fd; }
.profile-tab-content { display:none; }
.profile-tab-content.active { display:block; }
.profile-card { background:#1a1f2e; border:1px solid #2a2a3a; border-radius:12px; padding:24px; }
.profile-form-group { margin-bottom:16px; }
.profile-form-label { display:block; font-size:13px; color:#9090a8; margin-bottom:6px; }
.profile-form-input { width:100%; background:rgba(255,255,255,0.05); border:1px solid #3a3a50; border-radius:8px; padding:10px 14px; font-size:14px; color:#e0e0f0; transition:border-color 0.15s; box-sizing:border-box; }
.profile-form-input:focus { outline:none; border-color:#7c3aed; }
.profile-captcha-wrap { margin:14px 0; }
.profile-save-btn { background:linear-gradient(135deg,#7c3aed,#4f46e5); color:#fff; border:none; border-radius:8px; padding:10px 24px; font-size:14px; font-weight:600; cursor:pointer; transition:opacity 0.15s; }
.profile-save-btn:hover { opacity:0.88; }
.profile-save-btn:disabled { opacity:0.5; cursor:not-allowed; }
.profile-msg { margin-top:12px; font-size:13px; min-height:20px; }
.profile-msg.ok { color:#4ade80; }
.profile-msg.err { color:#f87171; }
.profile-addr-table { width:100%; border-collapse:collapse; font-size:12px; }
.profile-addr-table th { text-align:left; padding:8px 10px; color:#9090a8; border-bottom:1px solid #2a2a3a; font-weight:600; white-space:nowrap; }
.profile-addr-table td { padding:8px 10px; border-bottom:1px solid rgba(255,255,255,0.04); color:#c8c8d0; vertical-align:top; }
.profile-addr-table tr:last-child td { border-bottom:none; }
.profile-addr-table tr:hover td { background:rgba(255,255,255,0.03); }
.profile-addr-mono { font-family:monospace; font-size:11px; color:#9090a8; word-break:break-all; }
.profile-addr-new-val { font-family:monospace; font-size:11px; color:#4ade80; word-break:break-all; }
.profile-addr-empty { text-align:center; padding:30px; color:#9090a8; font-size:13px; }
.profile-slot-badge { display:inline-block; padding:2px 7px; border-radius:5px; background:rgba(124,58,237,0.18); color:#c4b5fd; font-size:11px; white-space:nowrap; }
.profile-back-btn { display:inline-flex; align-items:center; gap:6px; padding:7px 16px; border:1px solid #3a3a50; border-radius:8px; background:transparent; color:#9090a8; font-size:13px; text-decoration:none; cursor:pointer; transition:all 0.15s; margin-bottom:20px; }
.profile-back-btn:hover { background:rgba(255,255,255,0.07); color:#e0e0f0; text-decoration:none; }
.profile-table-scroll { overflow-x:auto; }
@media (max-width:600px) {
  .profile-card { padding:16px; }
  .profile-title { font-size:18px; }
  .profile-tab-btn { padding:6px 12px; font-size:12px; }
}
