/* Подписки и администраторы в профиле (16.10, subscriptions.js) — в стиле остальных блоков профиля */

.subs { overflow: hidden; }
.sub-row { width: 100%; display: flex; align-items: center; gap: 12px; min-height: 60px; padding: 10px 12px 10px 14px; border: 0;
  border-top: 1px solid var(--sep); background: none; color: var(--text); text-align: left;
  transition: background-color .2s var(--ease-out); }
.sub-row:first-child { border-top: 0; }
@media (hover: hover) { .sub-row:hover { background: var(--sub); } }
.sub-row:active { background: var(--sub-hover); transition-duration: .06s; }
.sub-main { flex: 1 1 auto; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.sub-name { font-size: 14.5px; font-weight: 600; }
.sub-purpose { font-size: 12.5px; color: var(--text3); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sub-state { flex: 0 1 auto; min-width: 0; display: flex; flex-direction: column; align-items: flex-end; gap: 2px; text-align: right; }
.sub-state b { font-size: 14px; font-weight: 600; white-space: nowrap; }
.sub-state span { font-size: 12px; color: var(--text3); }
.sub-row .chev { width: 16px; height: 16px; color: var(--text3); }
.sub-row.low .sub-state b, .sub-row.overdue .sub-state b, .sub-row.overdue .sub-state span { color: var(--danger); }
.sub-row.soon .sub-state span { color: var(--warn); font-weight: 600; }

/* форма подписки в листе */
.sub-form { display: flex; flex-direction: column; gap: 12px; padding-top: 4px; }
.sub-field { display: flex; flex-direction: column; gap: 5px; }
.sub-field[hidden] { display: none; }
.sub-label { font-size: 12.5px; font-weight: 600; color: var(--text3); }
.sub-hint { font-size: 12px; color: var(--text3); }
.sub-input { width: 100%; height: 42px; padding: 0 14px; border-radius: 14px; border: 1px solid var(--field-border); background: var(--field);
  color: var(--text); font-size: 15px; outline: none; }
.sub-input:focus { border-color: var(--accent-text); }
textarea.sub-input { height: auto; min-height: 64px; padding: 10px 14px; resize: none; line-height: 1.4; }
.sub-money { display: flex; align-items: center; gap: 8px; }
.sub-money .sub-input { flex: 1; min-width: 0; }
.sub-form .btn.block { margin-top: 0; }
.sub-form .link-btn { align-self: center; }

@media (max-width: 899px) {
  .sub-row { flex-wrap: wrap; }
  .sub-state { align-items: flex-start; text-align: left; flex-basis: 100%; }
  .sub-row .chev { display: none; }
}
