/* CIFRA · mejoras de producto: plazo libre, gráfico de coste, tarjetas en móvil, editor y guardado. */
.criterion-buttons button{min-height:44px}
.horizon-field{display:grid!important;gap:12px;margin-top:22px;max-width:520px}
.horizon-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.horizon-top label{margin:0!important}
#cost-horizon-out{font:550 22px/1 Archivo,sans-serif;color:var(--lime);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
#cost-horizon{width:100%;accent-color:var(--lime);height:28px;cursor:pointer}
.horizon-presets{display:flex;flex-wrap:wrap;gap:6px}
.horizon-presets button{background:none;color:#e1e7dd;border:1px solid #667660;min-height:44px;padding:8px 13px;font-size:13px;cursor:pointer}
.horizon-presets button[aria-pressed=true]{border-color:var(--lime);color:var(--lime)}
.horizon-help{font-size:12px;color:#b5c3ae;margin:0}
.quote-table thead th.is-recommended{background:#d7f45b0d}
.quote-table tfoot button{min-height:44px}
.cost-chart{margin:34px 0 0;padding:22px;border:1px solid #4b5b47;background:#1d2a24}
.cost-chart-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.cost-chart-head .eyebrow{margin:0}
.cost-chart-head span{font-size:12px;color:#b5c3ae}
.cost-chart-plot{margin-top:12px}
.cost-chart svg{display:block;width:100%;height:auto;overflow:visible}
.cost-chart svg text{font:500 12px Inter,sans-serif;fill:#b5c3ae}
.cost-chart svg .lab{font-weight:600}
.cost-chart svg .grid{stroke:#4b5b47;stroke-width:1}
.cost-chart svg .ln{stroke-width:2.5;stroke-linecap:round}
.cost-chart svg .now{stroke:#f6f7f2;stroke-width:1;stroke-dasharray:3 4}
.cost-chart svg .nowlab{fill:#f6f7f2;font-weight:600}
.cost-chart figcaption{margin-top:14px;font-size:15px;line-height:1.55;color:#f6f7f2;max-width:62ch}
.quote-cards{display:none;list-style:none;padding:0;margin:22px 0 0;gap:14px}
.quote-card{border:1px solid #4b5b47;padding:18px;display:grid;gap:14px;border-top:4px solid var(--qc)}
.quote-card.is-recommended{background:#d7f45b0d;border-color:#6f8068;border-top-color:var(--qc)}
.qc-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px}
.qc-head h3{font:550 24px/1.1 Archivo,sans-serif;margin:0;letter-spacing:-.03em;color:#f6f7f2}
.qc-head span{font-size:13px;color:#b5c3ae}
.qc-best{flex-basis:100%;font-size:12px;font-weight:600;color:var(--lime)}
.qc-total{margin:0;font:550 34px/1.1 Archivo,sans-serif;letter-spacing:-.04em;color:#f6f7f2;display:grid;gap:4px}
.qc-total small{font:500 12px Inter,sans-serif;letter-spacing:0;color:var(--lime)}
.quote-card dl{margin:0;display:grid;gap:0}
.quote-card dl div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-top:1px solid #4b5b47;font-size:14px}
.quote-card dt{color:#b5c3ae}
.quote-card dd{margin:0;color:#f6f7f2;text-align:right}
.quote-card dl .is-best dd{color:var(--lime);font-weight:600}
.quote-card button{min-height:48px;width:100%;background:none;border:1px solid #667660;color:#f6f7f2;font-size:14px;cursor:pointer}
.quote-card button[aria-pressed=true]{background:var(--lime);color:var(--ink);border-color:var(--lime);font-weight:600}
@media(max-width:700px){.quote-cards{display:grid}.quote-table-scroll{display:none}.cost-chart{padding:16px}.cost-chart svg text{font-size:13px}}
.quote-count{font-size:13px;margin:0 0 14px}
.quote-edit-fields fieldset{position:relative}
.remove-quote{margin-top:10px;background:none;border:0;padding:10px 0;min-height:44px;font-size:13px;text-decoration:underline;text-underline-offset:4px;cursor:pointer;color:inherit}
.add-quote{margin-top:14px;min-height:44px;padding:10px 16px;border:1px dashed currentColor;background:none;font-size:14px;cursor:pointer;color:inherit}
.add-quote[hidden]{display:none}
.editor-status{font-size:13px;min-height:1em}
.decision-risk-title{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin:18px 0 6px}
.decision-risks{margin:0;padding-left:18px;display:grid;gap:6px;font-size:14px}
.note-count{font-size:12px;text-align:right;margin:4px 0 12px;opacity:.75}
.save-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;margin-top:26px;padding-top:18px;border-top:1px solid #4b5b47}
.save-status{font-size:13px;color:#b5c3ae;margin:0;flex:1 1 260px}
.share-button{min-height:44px;padding:10px 16px;background:none;border:1px solid var(--lime);color:var(--lime);font-size:14px;cursor:pointer}
.share-button:hover{background:#d7f45b1a}
.share-url{flex-basis:100%;min-height:44px;padding:8px 10px;background:#243126;color:#f6f7f2;border:1px solid #667660;font-size:13px}
.share-url[hidden]{display:none}
/* Objetivos táctiles */
.site-header .brand,.site-footer .brand{min-height:44px;display:inline-flex;align-items:center}
.menu-toggle{min-width:44px!important;min-height:44px!important}
.quote-stamp a,.footer-bottom a{min-height:44px;display:inline-flex;align-items:center}
#cost-horizon{height:44px}
.footer-bottom a{min-width:44px;justify-content:center}
