/* ═══ Админка v2 — в стиле приложения: тёмные панели, сетка, синие акценты. Подключается последней. ═══ */
.app #screen-admin { background:transparent !important; padding:10px 14px 24px; }

/* Шапка */
.app #screen-admin .adm-top { display:flex; align-items:center; gap:12px; margin:2px 0 12px; }
.app #screen-admin .adm-back {
  flex:none; display:grid; place-items:center; width:38px; height:38px; padding:0; border-radius:12px !important;
  background:var(--control-fill) !important; border:1px solid var(--field-border) !important; color:var(--text) !important; font-size:22px; line-height:1;
}
.app #screen-admin .adm-top-txt { flex:1; min-width:0; }
.app #screen-admin .adm-top-txt h2 { margin:0; font-size:21px; font-weight:900; color:var(--text); }
.app #screen-admin .adm-top-txt p { margin:2px 0 0; font-size:11.5px; color:var(--muted); }
.app #screen-admin .adm-top-badge {
  flex:none; display:grid; place-items:center; width:38px; height:38px; border-radius:12px; font-size:18px;
  background:var(--active-fill); border:1px solid var(--chip-on-border);
}

/* Вкладки: прокручиваются, ничего не обрезается */
.app #screen-admin .adm-tabs {
  display:flex; gap:6px; margin:0 -14px 14px; padding:0 14px 2px; overflow-x:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch;
}
.app #screen-admin .adm-tabs::-webkit-scrollbar { display:none; }
.app #screen-admin .adm-tabs button {
  flex:none; display:flex; align-items:center; gap:6px; height:38px; padding:0 13px; border-radius:12px !important;
  background:var(--panel-bottom) !important; border:1px solid var(--line) !important; color:var(--muted) !important;
  font-size:13px; font-weight:800; white-space:nowrap; box-shadow:none !important;
}
.app #screen-admin .adm-tabs button span { font-size:14px; }
.app #screen-admin .adm-tabs button.active {
  background:var(--active-fill) !important; border-color:var(--chip-on-border) !important; color:var(--accent) !important;
}

/* Общие блоки */
.app #screen-admin .pay-hint {
  margin:0 0 10px; padding:10px 12px; border-radius:13px; font-size:11.5px; line-height:1.5; color:var(--muted);
  background:var(--panel-bottom); border:1px solid var(--line);
}
.app #screen-admin .list { padding:0; gap:6px; }
.app #screen-admin .row, body #playerSheet .row {
  margin:0 !important; padding:10px 12px !important; border-radius:14px !important; box-shadow:none !important;
  background:var(--panel-bottom) !important; border:1px solid var(--line) !important;
}
.app #screen-admin .row.clickable:hover { transform:none; border-color:var(--chip-on-border) !important; }
.app #screen-admin .row.clickable:active { background:var(--panel-top) !important; }
.app #screen-admin .r-title, body #playerSheet .r-title { font-size:13.5px; font-weight:800; color:var(--text) !important; }
.app #screen-admin .r-sub, body #playerSheet .r-sub { font-size:11.5px; line-height:1.4; color:var(--muted) !important; }
.app #screen-admin .empty, body #playerSheet .empty {
  margin:0; padding:22px 16px; border-radius:14px; border:1px dashed var(--line) !important; background:transparent !important; color:var(--muted) !important;
}
.app #screen-admin .section-title, body #playerSheet .section-title {
  padding:16px 2px 8px; color:var(--faint) !important; font-size:11px; font-weight:800; letter-spacing:.05em; text-transform:uppercase;
}
.app #screen-admin .badge, body #playerSheet .badge { margin-left:5px; padding:2px 6px; border-radius:6px; font-size:9px; font-weight:900; vertical-align:2px; }

/* Поиск и фильтры */
.app #screen-admin .search {
  display:flex; align-items:center; gap:8px; height:44px; margin:0 0 8px; padding:0 12px; border-radius:13px !important;
  background:var(--field-bg) !important; border:1px solid var(--field-border) !important; box-shadow:none !important;
}
.app #screen-admin .search input { height:42px; font-size:13.5px; background:none; border:0; }
.app #screen-admin .filters { display:flex; gap:6px; padding:0; margin-bottom:6px; }
.app #screen-admin #admFilter { display:flex; flex:1; gap:6px; padding:0; }
.app #screen-admin .chip {
  min-height:36px; padding:6px 10px; border-radius:11px !important; font-size:12px; font-weight:800;
  background:var(--panel-bottom) !important; border:1px solid var(--line) !important; color:var(--muted) !important; box-shadow:none !important;
}
.app #screen-admin .chip.active { background:var(--active-fill) !important; border-color:var(--chip-on-border) !important; color:var(--accent) !important; }
.app #screen-admin #admFilter .chip { flex:1; }
.app #screen-admin .select {
  flex:none; width:auto; max-width:46%; height:36px; padding:0 8px; border-radius:11px; font-size:12px; font-weight:700;
  background:var(--field-bg) !important; border:1px solid var(--field-border) !important; color:var(--text) !important;
}
.app #screen-admin .list-meta { padding:6px 2px 8px; font-size:11px; color:var(--faint) !important; }

/* Игроки: компактные строки */
.app #screen-admin .adm-prow { display:grid !important; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:10px; }
.app #screen-admin .mini-av {
  width:40px !important; height:40px !important; border-radius:50% !important; border:0 !important; box-shadow:none !important;
  display:grid; place-items:center; font-weight:900; color:var(--text); background-color:#15334e !important; background-size:cover !important; background-position:center !important;
}
.app #screen-admin .adm-prow .r-title { display:flex; align-items:center; gap:0; min-width:0; }
.app #screen-admin .adm-nm { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; min-width:0; }
.app #screen-admin .adm-prow .r-sub { overflow:hidden; white-space:nowrap; text-overflow:ellipsis; margin-top:2px; }
.app #screen-admin .adm-prow .r-right { text-align:right; }
.app #screen-admin .adm-prow .r-val { font-size:14px; font-weight:900; white-space:nowrap; color:var(--text) !important; }
.app #screen-admin .adm-prow .r-right .r-sub { font-size:11px; font-weight:700; }
.app #screen-admin .adm-prow .r-right .r-sub.green { color:var(--green) !important; }
.app #screen-admin .adm-prow .r-right .r-sub.red { color:var(--red) !important; }
.adm-lv {
  --tier:#9fb0c4; flex:none; display:inline-grid; place-items:center; min-width:20px; height:18px; margin-left:6px; padding:0 4px;
  border-radius:6px; font-size:10px; font-weight:900; color:#0b0d12; background:var(--tier);
}
.app #screen-admin #admMore { margin-top:8px; }

/* Финансы */
.app #screen-admin #finPeriod { display:flex; gap:6px; padding:0; margin:0 0 10px; }
.app #screen-admin #finPeriod .chip { flex:1; padding:6px 4px; white-space:nowrap; font-size:11.5px; }
.app #screen-admin .hero-num {
  padding:16px !important; border-radius:18px !important; box-shadow:none !important; border:1px solid var(--field-border) !important;
  background:
    linear-gradient(90deg,#969ac117 1px,transparent 1px) 50% 0 / 18px 18px,
    linear-gradient(#969ac117 1px,transparent 1px) 50% 0 / 18px 18px,
    var(--hero-fill) !important;
}
.app #screen-admin .hero-num .s-label { color:var(--muted) !important; font-size:12px; font-weight:700; letter-spacing:0; }
.app #screen-admin .hero-num .big {
  display:flex; align-items:center; gap:6px; margin:4px 0 6px; font-size:clamp(22px,7.4vw,32px) !important; line-height:1.15; font-weight:900; white-space:nowrap;
}
.app #screen-admin .hero-num .big span { overflow:hidden; text-overflow:ellipsis; }
.app #screen-admin .hero-num .h-sub { font-size:11.5px; color:var(--muted) !important; max-width:none; }
.app #screen-admin .pl, .app #screen-admin .chart-card, .app #screen-admin .stat-card, body #playerSheet .stat-card, body #playerSheet .card {
  border-radius:16px !important; border:1px solid var(--line) !important; background:var(--panel-bottom) !important; box-shadow:none !important;
}
.app #screen-admin .pl { margin-top:10px; padding:4px 14px; }
.app #screen-admin .pl-row { display:flex; justify-content:space-between; gap:12px; padding:10px 0; font-size:12.5px; border-color:var(--line) !important; }
.app #screen-admin .pl-row span { color:var(--muted); }
.app #screen-admin .pl-row b { white-space:nowrap; text-align:right; }
.app #screen-admin .pl-row.total span { color:var(--text); font-weight:800; }
.app #screen-admin .chart-card { margin-top:10px; padding:14px; }
.app #screen-admin .chart-card .c-title { font-size:14px; font-weight:900; color:var(--text) !important; }
.app #screen-admin .chart-card .c-sub { font-size:11px; color:var(--muted); }
.app #screen-admin .grid2 { gap:8px; margin-top:10px; padding:0; }
.app #screen-admin .stat-card { padding:12px !important; }
.app #screen-admin .stat-card .s-label { font-size:11px; color:var(--muted) !important; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.app #screen-admin .stat-card .big { margin:3px 0 2px; font-size:clamp(16px,5vw,20px) !important; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.app #screen-admin .stat-card .p-sub { font-size:11px; color:var(--faint); }

/* RTP, уровни, настройки: строки с полем ввода */
.app #screen-admin .rtp-row { display:flex !important; align-items:center; gap:8px; }
.app #screen-admin .rtp-row .r-main { flex:1; min-width:0; }
.app #screen-admin .rtp-input {
  flex:none; width:62px; height:36px; padding:0 8px; border-radius:10px; text-align:center; font-weight:800; font-size:13px;
  background:var(--field-bg) !important; border:1px solid var(--field-border) !important; color:var(--text) !important;
}
.app #screen-admin .adm-task-input { width:42%; text-align:left; }
.app #screen-admin .rtp-pct { color:var(--muted); font-size:12px; margin-left:-4px; }
.app #screen-admin .rtp-save, .app #screen-admin .rtp-reset {
  flex:none; height:36px; min-width:40px; padding:0 10px; border-radius:10px !important; font-size:12px; font-weight:900;
}
.app #screen-admin .rtp-save { background:var(--primary-fill) !important; border:1px solid var(--btn-border) !important; color:#fff !important; }
.app #screen-admin .rtp-reset { background:var(--control-fill) !important; border:1px solid var(--field-border) !important; color:var(--muted) !important; }
.app #screen-admin .rtp-tag { padding:1px 6px; border-radius:6px; font-size:9.5px; background:#ffb34722; color:#ffc46b; }
.app #screen-admin #admTasks > .pay-hint:not(:first-child) { margin-top:16px; }

/* Уровни в админке */
.app #screen-admin .adm-lvl-row { --tier:#9fb0c4; border-left:3px solid var(--tier) !important; }
.adm-lvl-ico {
  flex:none; display:grid; place-items:center; width:34px; height:34px; border-radius:11px; font-weight:900; font-size:13px;
  color:#0b0d12; background:var(--tier, #9fb0c4);
}
.app #screen-admin .adm-lvl-row .r-title { color:var(--tier) !important; }
.app #screen-admin .adm-lvl-table { margin-top:6px; padding:12px; border-radius:14px; background:var(--panel-bottom); border:1px solid var(--line); }
.app #screen-admin .adm-lvl-table b { display:block; margin-bottom:8px; font-size:12px; color:var(--muted); }
.app #screen-admin .adm-lvl-table div { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:4px; max-height:300px; overflow:auto; }
.app #screen-admin .adm-lvl-table span { padding:5px 4px; border-radius:8px; background:var(--field-bg); font-size:11px; font-weight:800; text-align:center; white-space:nowrap; }
.app #screen-admin .adm-lvl-table i { display:block; font-style:normal; font-size:9.5px; color:var(--faint); font-weight:700; }

/* Карточка игрока */
body #playerSheet { background:var(--dark) !important; }
body #playerSheet .sheet-head { background:var(--panel-bottom) !important; border-bottom:1px solid var(--line) !important; padding:12px 14px !important; }
body #playerSheet .sheet-title { color:var(--text) !important; font-weight:900; }
body #playerSheet .sheet-close {
  width:36px; height:36px; border-radius:11px !important; background:var(--control-fill) !important; border:1px solid var(--field-border) !important; color:var(--text) !important;
}
body #playerSheet .sheet-body { padding:12px 14px 24px; }
body #playerSheet .profile-head {
  display:flex; align-items:center; gap:12px; margin:0 0 10px !important; padding:14px !important; border-radius:16px !important;
  border:1px solid var(--field-border) !important;
  background:
    linear-gradient(90deg,#969ac117 1px,transparent 1px) 50% 0 / 18px 18px,
    linear-gradient(#969ac117 1px,transparent 1px) 50% 0 / 18px 18px,
    var(--hero-fill) !important;
}
body #playerSheet .avatar {
  flex:none; width:52px !important; height:52px !important; border-radius:50% !important; border:0 !important;
  box-shadow:0 0 0 2px var(--dark), 0 0 0 4px #2f8fe0 !important; background-color:#15334e !important; background-size:cover !important; background-position:center !important;
}
body #playerSheet .p-name { color:var(--text) !important; font-size:17px; font-weight:900; }
body #playerSheet .p-sub { color:var(--muted) !important; font-size:11.5px; }
body #playerSheet .grid3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:6px; padding:0; }
body #playerSheet .stat-card { padding:10px !important; min-width:0; }
body #playerSheet .stat-card .s-label { font-size:10.5px; color:var(--muted) !important; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
body #playerSheet .stat-card .big { font-size:14px !important; font-weight:900; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
body #playerSheet .list-meta { padding:8px 2px 0; }
body #playerSheet .list { padding:0; gap:6px; }
body #playerSheet .card { padding:12px !important; }
body #playerSheet .input { height:42px; border-radius:11px !important; background:var(--field-bg) !important; border:1px solid var(--field-border) !important; }
body #playerSheet .btn-row button { flex:1; min-height:40px; border-radius:11px !important; font-size:12px; font-weight:900; }
body #playerSheet .b-green { background:#123b2c !important; border:1px solid #2ec4b6aa !important; color:#7ff0e2 !important; }
body #playerSheet .b-red { background:#3b1418 !important; border:1px solid #e63946aa !important; color:#ff9aa2 !important; }
body #playerSheet .b-gold { background:#3a2f12 !important; border:1px solid #ffc94aaa !important; color:#ffd77a !important; }
body #playerSheet .toggle-row { padding:12px 0; border-color:var(--line) !important; }
body #playerSheet .t-title { font-weight:800; }
body #playerSheet .t-sub { font-size:11px; color:var(--muted); }
body #playerSheet .adm-plvl {
  display:flex; align-items:center; gap:10px; margin:0 0 10px; padding:12px; border-radius:14px;
  background:linear-gradient(90deg, color-mix(in srgb, var(--tier) 14%, transparent), var(--panel-bottom) 70%); border:1px solid color-mix(in srgb, var(--tier) 40%, var(--line));
}
body #playerSheet .adm-plvl .r-main { flex:1; min-width:0; }
body #playerSheet .adm-plvl .r-title { color:var(--tier) !important; }
body #playerSheet .adm-pbar { height:5px; margin-top:7px; border-radius:99px; background:#ffffff14; overflow:hidden; }
body #playerSheet .adm-pbar i { display:block; height:100%; background:var(--tier); border-radius:inherit; }
/* строки: без лишних отступов у заголовка и подписи из старых тем */
.app #screen-admin .row .r-title, body #playerSheet .row .r-title { margin:0 !important; line-height:1.3; }
.app #screen-admin .row .r-sub, body #playerSheet .row .r-sub { margin:2px 0 0 !important; }
.app #screen-admin :is(.hero-num, .pl, .chart-card) { margin-left:0 !important; margin-right:0 !important; }
.app #screen-admin .hero-num .big { font-size:clamp(20px,6.6vw,30px) !important; }
.app #screen-admin #finBody .row .r-sub { white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.app #screen-admin #finBody .row .r-main { min-width:0; }
.app #screen-admin #finBody .row .r-val { white-space:nowrap; }
.app #screen-admin .pay-hint { text-align:left; }
body #playerSheet .card { margin-left:0 !important; margin-right:0 !important; }
