/* file: public/css/consumer.css */

.catalog-toolbar { display: grid; grid-template-columns: 1.2fr repeat(3, minmax(150px, .6fr)); gap: 10px; margin-bottom: 14px; }
.provider-name { font-weight: 900; color: var(--text-strong); }
.provider-feature { color: var(--muted); font-size: 11px; }
.comparison-grid { display: grid; grid-template-columns: repeat(5, minmax(180px,1fr)); gap: 12px; overflow-x: auto; padding-bottom: 6px; }
.comparison-card { min-width: 180px; padding: 16px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.comparison-card.is-best { border-color: rgba(0,104,183,.42); box-shadow: 0 0 0 3px var(--brand-soft); }
.console-layout { display: grid; grid-template-columns: minmax(380px, .72fr) minmax(0, 1.28fr); gap: 18px; align-items: start; }
.console-results { min-width: 0; }
.result-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-bottom: 14px; }
.timeline { display: grid; grid-template-columns: repeat(8, minmax(90px,1fr)); gap: 8px; overflow-x: auto; padding-bottom: 6px; }
.timeline-step { position: relative; min-width: 90px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: #fff; font-size: 11px; }
.timeline-step.done { border-color: #a7f3d0; background: #f0fdf4; }
.timeline-step.error { border-color: #fecaca; background: #fff1f2; }
.timeline-step.skipped { color: var(--muted); background: #f8fafc; }
.timeline-step strong { display: block; margin-bottom: 5px; }
.code-comparison { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.invoice-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; }
