/* Портал юриста (свод 04.11.2026 LP-1..LP-5): вид портала поставщиков (supplier.css, login.css), здесь только своё - маршрут
   согласования в карточке, окно решения со своей редакцией, выбор юриста у администратора сайта и подсветка карточки по ссылке. */

.lp-select {
  flex: 1; min-width: 0; min-height: 34px; padding: 6px 10px; border: 1px solid var(--line-strong); border-radius: 10px;
  background: var(--surface); color: var(--text); font: inherit; font-size: 13.5px;
}
.lp-select:focus { border-color: var(--navy-500); box-shadow: 0 0 0 3px var(--focus); outline: none; }

/* карточка, на которую привела ссылка из оповещения (#c<id>, #a<id>) */
.sp-contract.lp-hit { border-color: var(--navy-500); box-shadow: 0 0 0 3px var(--focus); }

.lp-mine { padding: 10px 12px; border-radius: 10px; background: var(--warn-bg); color: var(--warn); font-size: 13.5px; line-height: 1.45; }
.lp-mine.late { background: var(--bad-bg); color: var(--bad); }

.lp-route { border-top: 1px solid var(--line); padding-top: 8px; }
.lp-route summary { cursor: pointer; font-size: 13.5px; font-weight: 600; color: var(--navy-600); padding: 4px 0; }
@media (prefers-color-scheme: dark) { .lp-route summary { color: #b9cbec; } }
.lp-route summary:focus-visible { outline: 3px solid var(--focus); outline-offset: 2px; }
.lp-round { margin: 8px 0 0; }
.lp-round h4 { margin: 0 0 6px; font-size: 13px; color: var(--text-2); font-weight: 600; }
.lp-steps { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 6px; }
.lp-step { display: grid; grid-template-columns: 28px minmax(0, 1fr) auto; gap: 2px 10px; align-items: start; font-size: 13.5px; }
.lp-step .lp-n { color: var(--text-3); font-variant-numeric: tabular-nums; }
.lp-step .lp-who { min-width: 0; overflow-wrap: anywhere; }
.lp-step .lp-who b { font-weight: 600; }
.lp-step.mine .lp-who b { color: var(--navy-600); }
@media (prefers-color-scheme: dark) { .lp-step.mine .lp-who b { color: #b9cbec; } }
.lp-step .lp-when { color: var(--text-3); font-size: 12.5px; }
.lp-step .lp-comment { grid-column: 2 / -1; padding: 6px 10px; border-left: 3px solid var(--line-strong); color: var(--text-2); white-space: pre-wrap; overflow-wrap: anywhere; }
.lp-step .lp-files { grid-column: 2 / -1; }

.lp-decide { padding: 12px; border: 1px dashed var(--navy-500); border-radius: 12px; background: var(--info-bg); display: flex; flex-direction: column; gap: 10px; }
.lp-decide.returned { border-color: var(--warn); background: var(--warn-bg); }
.lp-decide p { margin: 0; font-size: 13.5px; line-height: 1.45; overflow-wrap: anywhere; }

@media (max-width: 640px) {
  .lp-step { grid-template-columns: 22px minmax(0, 1fr); }
  .lp-step .sp-badge { grid-column: 2; justify-self: start; }
}
