/* Награды и баланс (чат «Награды»). 31.10 (Сергей): окно «Награда за вход» (ov-streak, js/streak.js) — календарь на 7 дней:
   сверху 4 дня, снизу 5, 6 и широкий 7-й (раскраска). Забранные — с галочкой и бледнее, сегодняшний — зелёная рамка и пульс.
   Цвета — как у остальных окон наград (.panel-daily, шкала уровня .lv-bar). */
.panel-streak { width: 360px; }
.stk-sub { margin-top: 2px; font-size: 15px; font-weight: 900; color: var(--ink); }
.stk-days { display: grid; grid-template-columns: repeat(4, 1fr); gap: 6px; align-self: stretch; margin: 4px 0 2px; }
.stk-day { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; min-height: 64px; padding: 4px 2px;
  border-radius: 12px; border: 3px solid #d9bf8c; background: #fbf1da; color: #9a7a52; }
.stk-day b { font-size: 12px; font-weight: 900; }
.stk-day span { display: flex; align-items: center; gap: 2px; font-size: 15px; font-weight: 900; color: #b8741a; font-variant-numeric: tabular-nums; text-align: center; line-height: 1.1; }
.stk-day span svg { width: 18px; height: 18px; flex: none; }
.stk-day canvas { width: 86px; height: auto; display: block; }
.stk-day.stk-7 { grid-column: span 2; background: linear-gradient(#fff3c4, #ffd977); border-color: #e0a92e; }
.stk-day.stk-7 span { font-size: 13px; color: var(--ink); }
.stk-day.got { opacity: 1; background: #f3ead6; border-color: #d9c9a6; }   /* 31.10 (Дизайн): блёкнет содержимое, а не галочка */
.stk-day.got > :not(.stk-ok) { opacity: .5; }
.stk-day.today { border-color: var(--ink); background: linear-gradient(#e9ffd2, #b8f56a); color: var(--ink); animation: stkpulse 1.4s ease-in-out infinite; }
.stk-day.stk-7.today { background: linear-gradient(#fff3c4, #ffc94a); }
.stk-ok { position: absolute; right: -6px; top: -6px; z-index: 1; width: 20px; height: 20px; border-radius: 50%; background: #3f9a1c; border: 2px solid #fff; box-shadow: 0 1px 0 rgba(0, 0, 0, .3); }   /* 31.10 (Сергей): значок на углу клетки — не закрывает «День N» */
.stk-ok::after { content: ''; position: absolute; left: 5px; top: 2px; width: 4px; height: 9px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg); }
.stk-what { font-weight: 900; }
.stk-next { color: #3f9a1c; font-weight: 900; }
@keyframes stkpulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } }

/* 31.10 (Сергей): уровень фермера (js/level.js). Полоска .lvb — в плашке уровня в меню (#m3-lv) и в итогах боя (#res-lv); окно «Новый уровень!» (ov-lvup). */
.lvb { display: block; position: relative; height: 7px; border-radius: 4px; background: rgba(58, 29, 10, .25); overflow: hidden; }
.lvb em { position: absolute; left: 0; top: 0; bottom: 0; width: 0; border-radius: 4px; background: linear-gradient(#b8f56a, #5cc02e 55%, #3f9a1c); transition: width .9s ease-out; }
#m3-lv { display: inline-flex; flex-direction: column; align-items: stretch; gap: 2px; }
#m3-lv[hidden] { display: none; }
#m3-lv .lvb { min-width: 64px; }
.res-lv { display: flex; align-items: center; gap: 8px; align-self: stretch; margin: 2px 6px 0; font-size: 13px; font-weight: 900; color: var(--ink); }
.res-lv .lvb { flex: 1; height: 10px; border: 2px solid var(--ink); }
.panel-lvup .lv-badge { margin-top: 4px; }
.lvu-gift { display: flex; align-items: center; gap: 4px; font-size: 26px; font-weight: 900; color: var(--ink); }
.lvu-gift svg { width: 30px; height: 30px; }
.lvu-gift small { font-size: 16px; color: #b8741a; }
.lvu-av { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 900; color: var(--ink); }
.lvu-av-pic svg { width: 56px; height: 56px; display: block; }
/* 31.10 (Сергей, Дизайн): опыт в итогах — не третьей плашкой, а в строке уровня справа от полоски: «Уровень 2 ━━━ 🌱 +34 опыта»; плашки очков и монет — как были */
.res-lv .re-xp { display: flex; align-items: center; gap: 3px; flex: none; white-space: nowrap; }
.res-lv .re-xp svg { width: 20px; height: 20px; }
.res-lv .re-xp b { font-size: 15px; font-weight: 900; color: #3f9a1c; font-variant-numeric: tabular-nums; }
.res-lv .re-xp small { font-size: 12px; font-weight: 800; color: #3f9a1c; }

/* 01.11 (Сергей): серия боёв подряд в итогах (#res-bser, js/bseries.js) — зелёным, когда множитель есть или будет на следующем бою */
.res-bser { align-self: stretch; margin: 2px 6px 0; text-align: center; font-size: 13px; font-weight: 900; color: #9a7a52; }
.res-bser.on { color: #e08a00; }
