/* Сервис оценки ([valuation]) */
.val-box { background: var(--c-bg-alt); border-radius: var(--radius-lg); padding: 28px; }
.val-box h2 { font-size: 24px; font-weight: 800; color: var(--c-ink); margin-bottom: 10px; }
.val-box__btns { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 18px; }
.val-wrap { display: grid; gap: 20px; }
.val-form { background: #fff; border: 1px solid var(--c-line); border-radius: var(--radius-lg); padding: 24px; display: grid; gap: 16px; }
.val-form h2, .val-h2 { font-size: 22px; font-weight: 800; color: var(--c-ink); margin: 0; }
.val-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.val-wide { grid-column: 1 / -1; }
.val-form select, .val-form input[type=text] { width: 100%; }
.val-hint { font-size: 13px; margin: 0; }
.val-note { background: var(--c-accent-soft); border-radius: 8px; padding: 10px 14px; margin: 0; font-size: 14px; }
.val-limit { margin-left: 12px; font-size: 14px; }
.val-list { display: grid; gap: 14px; }
.val-item { padding: 16px; border: 1px solid var(--c-line); border-radius: var(--radius); background: #fff; display: grid; gap: 12px; }
.val-item__head { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; flex-wrap: wrap; }
.val-res { display: grid; gap: 8px; }
.val-res__label { font-size: 13px; color: var(--c-muted); }
.val-res__price { font-size: 28px; font-weight: 800; color: var(--c-ink); }
.val-res__price small { font-size: 15px; font-weight: 600; color: var(--c-muted); }
.val-res__sub { font-size: 15px; }
.val-res p { margin: 0; font-size: 14px; }
.val-res__warn { color: var(--c-accent-dark); font-weight: 600; }
.val-res__more summary { cursor: pointer; font-weight: 600; font-size: 14px; }
.val-table-wrap { overflow-x: auto; margin-top: 8px; }
.val-table { border-collapse: collapse; width: 100%; font-size: 14px; }
.val-table th, .val-table td { text-align: left; padding: 6px 12px 6px 0; border-bottom: 1px solid var(--c-line); white-space: nowrap; }
.val-runs { margin: 8px 0 0; padding-left: 18px; font-size: 14px; }
@media (max-width: 760px) { .val-grid { grid-template-columns: 1fr; } .val-form { padding: 16px; } .val-res__price { font-size: 22px; } .val-limit { display: block; margin: 8px 0 0; } }
