/* WorkRussia — сравнение карт и семейный бюджет. Подключить после wr-all.css. */
.wr-cards-tools-note { color: var(--muted, #595f64); font-size: .95rem; line-height: 1.55; margin: 0 0 18px; }
.wr-card-compare-toolbar { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 20px 0; }
.wr-card-compare-status { flex: 1 1 240px; margin: 0; }
.wr-card-compare-toolbar .btn, .wr-family-budget .btn, .wr-card-comparison .btn { white-space: normal; min-height: 44px; }
.wr-cardtile__compare { position: relative; z-index: 2; width: 100%; margin: 8px 0; min-height: 44px; white-space: normal !important; }
.wr-cardtile__compare[aria-pressed="true"] { color: var(--accent-strong, #006a9a); border-color: var(--accent, #007bb0); background: var(--accent-soft, #e6f6fd); }
.wr-cardtile__compare:disabled, .wr-card-compare-toolbar button:disabled { opacity: .55; cursor: default; }
.wr-card-comparison, .wr-family-budget { min-width: 0; margin: 24px 0; padding: 24px; border: 1px solid var(--line, #e4e9ee); border-radius: 20px; background: var(--surface, #fff); color: var(--text, #1d2935); }
.wr-card-comparison[hidden], .wr-card-compare-toolbar [hidden], .wr-budget-result[hidden] { display: none !important; }
.wr-card-comparison h2, .wr-family-budget h2 { margin: 0 0 12px; font-size: clamp(1.25rem, 3vw, 1.65rem); line-height: 1.25; }
.wr-card-compare-scroll { max-width: 100%; overflow-x: auto; margin: 20px 0; -webkit-overflow-scrolling: touch; }
.wr-card-compare-table { width: 100%; border-collapse: collapse; text-align: left; font-size: .95rem; line-height: 1.5; }
.wr-card-compare-table caption { text-align: left; font-weight: 700; padding-bottom: 12px; }
.wr-card-compare-table th, .wr-card-compare-table td { min-width: 170px; max-width: 300px; padding: 14px; border: 1px solid var(--line, #e4e9ee); vertical-align: top; overflow-wrap: anywhere; }
.wr-card-compare-table th { background: var(--surface-soft, #f7f9fb); }
.wr-card-compare-table a { color: var(--accent-strong, #006a9a); text-decoration: underline; text-underline-offset: 3px; }
.wr-budget-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; margin: 20px 0 12px; }
.wr-budget-field { display: flex; flex-direction: column; gap: 8px; min-width: 0; line-height: 1.4; font-weight: 600; }
.wr-budget-field input { width: 100%; min-width: 0; box-sizing: border-box; min-height: 48px; border: 1px solid var(--line, #d0d7de); border-radius: 10px; background: var(--surface, #fff); color: var(--text, #1d2935); padding: 12px; font: inherit; font-size: 16px; }
.wr-budget-field input[aria-invalid="true"] { border-color: var(--negative, #b3261e); }
.wr-card-comparison :focus-visible, .wr-card-compare-toolbar :focus-visible, .wr-cardtile__compare:focus-visible, .wr-family-budget :focus-visible { outline: 3px solid var(--accent, #007bb0); outline-offset: 3px; }
.wr-budget-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.wr-budget-error { color: var(--negative, #b3261e); line-height: 1.5; }
.wr-budget-result { margin-top: 20px; padding: 20px; border-radius: 14px; background: var(--surface-soft, #f7f9fb); line-height: 1.55; }
.wr-budget-result strong { display: block; font-size: 1.25rem; }
.wr-budget-result p { margin: 10px 0; }
@media (max-width: 640px) {
  .wr-card-comparison, .wr-family-budget { padding: 18px; border-radius: 16px; }
  .wr-budget-fields { grid-template-columns: minmax(0, 1fr); }
  .wr-card-compare-toolbar { gap: 10px; }
  .wr-card-compare-toolbar .btn { flex: 1 1 180px; }
  .wr-budget-actions .btn { flex: 1 1 160px; }
  .wr-card-compare-table th, .wr-card-compare-table td { min-width: 155px; padding: 12px; }
  .wr-cards-filter { flex-wrap: wrap; overflow: visible; margin-inline: 0; padding-inline: 0; }
  .wr-cards-filter .wr-cf-chip { white-space: normal; text-align: left; line-height: 1.3; min-height: 44px; }
}

html[data-theme="dark"] .wr-card-compare-table a { color: #83d5f4; }
html[data-theme="dark"] .wr-budget-error { color: #ffb4ab; }
html[data-theme="dark"] .wr-budget-field input[aria-invalid="true"] { border-color: #ffb4ab; }
