/* Ruby Pro pricing tools — shared styles for /pricing/tools/*.
   Kept out of rubypro.css so the tools can evolve without touching the main site sheet. */

.ps-tool-table { font-size: .9rem; }
.ps-tool-table th { font-weight: 600; white-space: nowrap; vertical-align: bottom; }
.ps-tool-table td { vertical-align: middle; white-space: nowrap; }
.ps-tool-table .ps-calc { background: #faf7f6; }
.ps-tool-table input.form-control-sm,
.ps-tool-table select.form-select-sm { min-width: 5.5rem; }

.ps-hint { font-size: .72rem; color: #6c757d; line-height: 1.2; }

.ps-badge { display: inline-block; padding: .15rem .5rem; border-radius: 999px; font-size: .72rem; font-weight: 600; }
.ps-badge-ok { background: #e7f3ec; color: #1d6b3f; }
.ps-badge-bad { background: #fbeceb; color: #a3231a; }
.ps-badge-warn { background: #fdf3e3; color: #8a5a10; }

.ps-flag { font-size: .65rem; text-transform: uppercase; letter-spacing: .04em; padding: .1rem .35rem;
           border-radius: 3px; background: #681d15; color: #fff; vertical-align: middle; }
.ps-flag-soft { background: #d9cfcd; color: #4a3330; }

.ps-note { border-left: 3px solid #681d15; background: #faf7f6; padding: .65rem .9rem;
           font-size: .85rem; margin-bottom: .6rem; border-radius: 0 4px 4px 0; }
.ps-note-flat { border-left-color: #c9a227; background: #fdfaf0; }

.ps-stat { border: 1px solid #e6dedd; border-radius: 6px; padding: .8rem 1rem; height: 100%; }
.ps-stat-label { font-size: .72rem; text-transform: uppercase; letter-spacing: .05em; color: #6c757d; }
.ps-stat-value { font-size: 1.3rem; font-weight: 700; color: #681d15; line-height: 1.3; }

.ps-supplier { color: #681d15; font-weight: 600; }

.ps-toolcard { border: 1px solid #e6dedd; border-radius: 8px; height: 100%; transition: box-shadow .15s ease; }
.ps-toolcard:hover { box-shadow: 0 6px 18px rgba(104, 29, 21, .10); }
.ps-toolcard .ps-kicker { font-size: .68rem; letter-spacing: .09em; text-transform: uppercase;
                          color: #fff; background: #681d15; padding: .2rem .55rem; border-radius: 999px; }

@media print {
  .navbar, footer, .ps-noprint { display: none !important; }
  .ps-tool-table input, .ps-tool-table select { border: none; background: transparent; }
}
