/* Блок «Цель по прибыли» в «Позициях» (#296) — поверх классов ленты (feed-cards.css)
   и карточки позиции (pos-cards.css): статус, числа, плитки — оттуда, здесь — своё */
.gw2 { margin-bottom: 16px; }
.gw2 .tgc-head { justify-content: space-between; align-items: flex-start; }
.gw2-title b { display: block; font-size: 16px; color: #e6edf3; }
.gw2-title span { display: block; color: #8b949e; font-size: 12px; margin-top: 2px; }
.gw2-cfg { display: inline-flex; align-items: center; gap: 6px; flex: none; color: #8b949e; font-size: 12px; background: none;
    border: 1px solid #30363d; border-radius: 8px; padding: 5px 10px; cursor: pointer; }
.gw2-cfg:hover, .gw2-cfg:focus-visible { color: var(--brand-gold); border-color: rgba(var(--brand-gold-rgb), .5); }
.gw2-link { background: none; border: 0; padding: 0; margin-top: 2px; color: var(--brand-gold); font-size: 12px; cursor: pointer; text-align: left; }
.gw2-link:hover { text-decoration: underline; }
.gw2 .tgc-kpi span, .gw2 .tgc-tile span { overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
.gw2 .tgc-status .tgc-why { overflow: hidden; text-overflow: ellipsis; }
.gw2-empty b { color: #8b949e !important; font-size: 16px !important; }
/* Полосы: прогресс к плану, расход лимита; риска — где должен быть по времени */
.gw2-bar { height: 4px; border-radius: 2px; background: var(--bg-track); margin-top: 8px; overflow: hidden; position: relative; }
.gw2-bar i { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 2px; }
.gw2-bar .ok { background: #3fb950; } .gw2-bar .run { background: var(--brand-gold); } .gw2-bar .warn { background: #d29922; } .gw2-bar .bad { background: #f85149; }
.gw2-bar .mark { width: 2px; background: #e6edf3; opacity: .7; border-radius: 0; }
.gw2-month { margin: 14px 2px 4px; }
.gw2-month:empty { display: none; }
.gw2-month .gw2-bar { height: 6px; margin: 0; }
.gw2-axis { display: flex; justify-content: space-between; gap: 8px; color: #6e7681; font: 11px ui-monospace, Menlo, monospace; margin-top: 6px; }
.gw2-axis em { font-style: normal; color: #8b949e; }
/* «Подробнее» */
.gw2-more { margin-top: 12px; display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
.gw2-more small { color: #6e7681; font-size: 12px; margin-right: 4px; }
.gw2 .pc-chip.on { color: var(--brand-gold); border-color: rgba(var(--brand-gold-rgb), .5); }
.gw2-grid { display: grid; gap: 8px; margin-top: 10px; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
.gw2-grid .tgc-tile small { display: flex; justify-content: space-between; gap: 6px; }
.gw2-grid .tgc-tile small em { font-style: normal; font-size: 11px; padding: 0 6px; border-radius: 6px; white-space: nowrap; }
.gw2-grid em.good { color: #3fb950; background: rgba(63,185,80,.12); }
.gw2-grid em.bad  { color: #f85149; background: rgba(248,81,73,.12); }
.gw2-grid em.eq   { color: #8b949e; background: var(--bg-track); }
.gw2-norm { height: 4px; border-radius: 2px; background: var(--bg-track); margin-top: 8px; position: relative; }
.gw2-norm i { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 2px; background: #58a6ff; }
.gw2-norm b { position: absolute; top: -3px; width: 2px; height: 10px; background: #e6edf3; opacity: .8; }
.gw2-note { color: #6e7681; font-size: 11px; margin-top: 6px; }
.gw2-broken { padding: 14px; color: #8b949e; font-size: 13px; }
@media (max-width: 480px) {
    .gw2-cfg span { display: none; }
    .gw2 .tgc-kpi b { font-size: 18px; }
    .gw2 .tgc-tile b { font-size: 15px; }
    .gw2-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    /* метка сравнения — цветной точкой, текст — в title */
    .gw2-grid .tgc-tile small em { font-size: 0; padding: 0; width: 8px; height: 8px; border-radius: 50%; flex: none; margin-top: 4px; }
    .gw2-grid em.good { background: #3fb950; } .gw2-grid em.bad { background: #f85149; } .gw2-grid em.eq { background: #484f58; }
}
/* Скелетон до загрузки цели — под высоту блока, чтобы «Позиции» не прыгали */
.gw2-sk-status { height: 32px; border-radius: 0; }
.gw2-sk-title { height: 36px; width: 40%; border-radius: 6px; margin-bottom: 4px; }
.gw2-sk-kpi { height: 84px; border-radius: 8px; }
.gw2-sk-tile { height: 70px; border-radius: 8px; }
