.lp-view { display: grid; gap: 18px; min-width: 0; }
.lp-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.lp-toolbar h2 { font-size: 22px; margin-bottom: 5px; }
.lp-toolbar p, .lp-muted, .lp-footer { color: var(--muted); font-size: 13px; line-height: 1.65; }
.lp-button { border: 1px solid var(--line-strong); border-radius: var(--r-ctrl); background: var(--surface); padding: 10px 14px; font-weight: 600; }
.lp-button:hover { border-color: var(--brand); }
.lp-source-note { margin-top: -8px; }
.lp-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.lp-stats > div { border: 1px solid var(--line); border-radius: var(--r-card); background: var(--surface); padding: 18px; display: grid; gap: 8px; }
.lp-stats span { font-size: 12px; color: var(--muted); }
.lp-stats strong { font-size: 30px; line-height: 1; }
.lp-stats .lp-stat-pending { border-color: #e2c48f; background: #fffaf1; }
.lp-stat-pending strong { color: var(--warn); }
.lp-filters { display: flex; gap: 12px; align-items: flex-end; }
.lp-filters label { display: grid; gap: 6px; font-size: 12px; font-weight: 600; }
.lp-filters label:first-child { flex: 1; }
.lp-filters input, .lp-filters select { width: 100%; min-width: 0; border: 1px solid var(--line-strong); border-radius: var(--r-ctrl); background: var(--surface); padding: 11px 12px; font-size: 14px; font-weight: 400; }
.lp-filters > span { padding-bottom: 12px; font-size: 12px; color: var(--muted); white-space: nowrap; }
.lp-layout { display: grid; grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.65fr); gap: 20px; align-items: start; min-width: 0; }
.lp-list { display: grid; gap: 10px; max-height: 78vh; overflow: auto; padding: 1px 5px 3px 1px; }
.lp-case { display: grid; gap: 10px; text-align: left; border: 1px solid var(--line); border-radius: var(--r-card); background: var(--surface); padding: 17px; width: 100%; }
.lp-case:hover { border-color: var(--brand); }
.lp-case.is-selected { border-color: var(--brand); box-shadow: 0 0 0 1px var(--brand); background: #f7faff; }
.lp-case-top { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.lp-case-top strong { font-size: 13px; }
.lp-case-top time { font-size: 11px; color: var(--muted); }
.lp-case > strong { font-size: 14px; }
.lp-case p { font-size: 13px; line-height: 1.65; color: var(--ink-soft); }
.lp-case-contract { font-size: 12px; color: var(--muted); }
.lp-tag { display: inline-flex; width: fit-content; background: var(--surface-2); border: 1px solid var(--line); padding: 4px 8px; border-radius: var(--r-pill); font-size: 11px; font-weight: 500; }
.lp-detail { border: 1px solid var(--line); border-radius: var(--r-card); background: var(--surface); min-width: 0; overflow: hidden; }
.lp-detail-header { padding: 23px 24px; display: grid; gap: 9px; border-bottom: 1px solid var(--line); }
.lp-detail-header h2 { font-size: 21px; overflow-wrap: anywhere; }
.lp-detail-header p { font-size: 13px; color: var(--muted); }
.lp-eyebrow { font-size: 11px; text-transform: uppercase; letter-spacing: .07em; color: var(--s-granos); font-weight: 600; }
.lp-detail-header .lp-document-qty { color: var(--ink); font-size: 18px; font-weight: 600; }
.lp-section { padding: 22px 24px; border-bottom: 1px solid var(--line); display: grid; gap: 13px; min-width: 0; }
.lp-section:last-child { border-bottom: 0; }
.lp-section h3 { font-size: 16px; }
.lp-section h4, .lp-evidence-group h4 { font-size: 13px; margin: 10px 0 0; }
.lp-section p { font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
.lp-section .lp-muted { font-size: 12px; }
.lp-conclusion { background: #fffaf1; }
.lp-section-heading { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 10px; align-items: center; }
.lp-quantities { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.lp-quantities > div { padding: 12px; background: var(--surface-2); border-radius: 6px; display: grid; gap: 8px; }
.lp-quantities span { color: var(--muted); font-size: 11px; }
.lp-quantities strong { font-size: 15px; overflow-wrap: anywhere; }
.lp-quantities .lp-shortage { background: var(--crit-tint); color: var(--crit); }
.lp-table-wrap { overflow-x: auto; min-width: 0; }
.lp-table { width: 100%; border-collapse: collapse; text-align: left; font-size: 12px; }
.lp-table caption { text-align: left; margin-bottom: 10px; color: var(--muted); font-size: 12px; }
.lp-table th { font-size: 11px; color: var(--muted); font-weight: 600; }
.lp-table td, .lp-table th { border-bottom: 1px solid var(--line); padding: 10px 8px; vertical-align: top; }
.lp-table th:first-child, .lp-table td:first-child { padding-left: 0; }
.lp-callout, .lp-next { background: var(--warn-tint); border-left: 3px solid #d2a34d; border-radius: 4px; padding: 13px 15px; font-size: 13px; line-height: 1.7; }
.lp-callout p, .lp-next p { margin-top: 7px; font-size: 13px; }
.lp-next { background: var(--brand-tint); border-color: var(--brand); }
.lp-error { padding: 14px 18px; border: 1px solid #ecc2bd; border-radius: var(--r-card); background: var(--crit-tint); color: var(--crit); font-size: 13px; }
.lp-control { display: grid; gap: 10px; border-left: 2px solid var(--line-strong); padding-left: 14px; }
.lp-control small { font-size: 11px; color: var(--muted); overflow-wrap: anywhere; }
.lp-control details, .lp-section > details { font-size: 12px; }
.lp-view summary { cursor: pointer; font-weight: 600; padding: 7px 0; }
.lp-facts { margin: 8px 0; display: grid; gap: 8px; }
.lp-facts > div { display: grid; grid-template-columns: minmax(120px, 1fr) minmax(100px, 1fr); gap: 10px; }
.lp-facts dt { color: var(--muted); font-size: 12px; }
.lp-facts dd { margin: 0; font-size: 12px; overflow-wrap: anywhere; }
.lp-evidence-item { padding: 10px 12px; margin-top: 8px; border: 1px solid var(--line); border-radius: 5px; }
.lp-evidence-item > strong { font-size: 11px; color: var(--muted); }
.lp-evidence-group { margin-top: 9px; }
.lp-empty { background: var(--surface); border: 1px dashed var(--line-strong); border-radius: var(--r-card); padding: 28px; color: var(--muted); line-height: 1.7; font-size: 14px; }
.lp-footer { font-size: 11px; }
.lp-view button:focus-visible, .lp-view input:focus-visible, .lp-view select:focus-visible, .lp-view summary:focus-visible { outline: 3px solid var(--brand-ring); outline-offset: 2px; }
@media (max-width: 1050px) { .lp-layout { grid-template-columns: minmax(240px,.8fr) minmax(0,1.2fr); } .lp-quantities { grid-template-columns: 1fr; } }
@media (max-width: 760px) { .lp-toolbar { align-items: flex-start; } .lp-toolbar h2 { font-size: 19px; } .lp-stats { grid-template-columns: repeat(2,minmax(0,1fr)); } .lp-layout { grid-template-columns: 1fr; } .lp-list { max-height: 380px; } .lp-filters { flex-wrap: wrap; } .lp-filters label { width: 100%; } .lp-filters > span { padding: 0; } .lp-section, .lp-detail-header { padding: 18px; } .lp-quantities { grid-template-columns: repeat(3,minmax(0,1fr)); } .lp-quantities strong { font-size: 12px; } .lp-quantities > div { padding: 9px; } }

.lp-period{display:flex;flex-wrap:wrap;gap:14px;padding:16px;background:#f3f6fa;border:1px solid #dce3ec;border-radius:12px;margin:16px 0}.lp-period label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;min-width:160px}.lp-period select,.lp-period input{padding:9px 12px;border:1px solid #cbd5e1;border-radius:7px;background:white;color:#17243b;max-width:100%}.lp-page{display:flex;gap:10px;align-items:center;margin:12px 0}.lp-page span{margin-right:auto}.lp-timeline{list-style:none;padding:0 0 0 16px;border-left:2px solid #cad7e7;margin:20px 0}.lp-timeline li{position:relative;padding:0 0 20px 18px}.lp-timeline li:before{content:"";position:absolute;left:-22px;top:5px;width:10px;height:10px;border-radius:50%;background:#477dae}.lp-timeline time{display:block;font-size:12px;color:#66758b;margin-bottom:4px}.lp-timeline p{margin:6px 0 0}.lp-ai{border-left:4px solid #5974b6}.lp-ai-claim{padding:10px 0;border-bottom:1px solid #e1e6ef}.lp-ai-claim details{font-size:13px}.lp-coverage{padding:14px;border:1px solid #dce3ec;border-radius:9px;margin-top:20px}.lp-filters{flex-wrap:wrap}.lp-filters label{min-width:160px;flex:1}.lp-case time{white-space:nowrap}@media(max-width:640px){.lp-period label{min-width:0;flex:1 1 145px}.lp-page{flex-wrap:wrap}.lp-filters label{min-width:0;flex:1 1 145px}.lp-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-period input{width:100%;box-sizing:border-box}}
