.jurisprudence-page{max-width:1280px}.jurisprudence-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px}.jurisprudence-heading h1{font-family:'Source Serif 4',Georgia,serif;font-size:clamp(38px,5vw,62px);line-height:1.02;color:var(--navy);margin:0}.jurisprudence-count{background:var(--navy);color:#fff;border-radius:18px;padding:16px 22px;text-align:right;min-width:170px}.jurisprudence-count strong{display:block;font-size:30px}.jurisprudence-count span{font-size:12px;color:#c8d1df}.jurisprudence-filters{align-items:flex-end}.jurisprudence-filters label{min-width:150px}.jurisprudence-filters input,.jurisprudence-filters select{min-width:150px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--ink);padding:11px 12px;font-size:14px;font-weight:600}.jurisprudence-filters .search-field{flex:1;min-width:250px}.jurisprudence-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.75fr);gap:18px;align-items:start}.jurisprudence-results{display:grid;gap:12px}.jurisprudence-card{border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:18px;cursor:pointer;transition:.2s ease}.jurisprudence-card:hover,.jurisprudence-card.active{border-color:var(--red);box-shadow:0 10px 26px rgba(179,41,53,.12)}.jurisprudence-card-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--red);font-size:11px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.jurisprudence-card h2{font-family:'Source Serif 4',Georgia,serif;font-size:24px;line-height:1.18;color:var(--navy);margin:10px 0}.jurisprudence-card p{color:var(--muted);line-height:1.5;margin:0}.jurisprudence-card small{display:block;color:var(--muted);margin-top:12px}.jurisprudence-detail{position:sticky;top:96px;background:var(--panel);border:1px solid var(--line);border-top:5px solid var(--red);border-radius:20px;padding:24px;box-shadow:var(--shadow);max-height:calc(100vh - 120px);overflow:auto}.jurisprudence-detail h2{font-family:'Source Serif 4',Georgia,serif;color:var(--navy);font-size:30px;line-height:1.12;margin:8px 0 18px}.detail-label{color:var(--red);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin:20px 0 7px}.jurisprudence-detail p{color:var(--ink);line-height:1.6;white-space:pre-line}.detail-source{color:var(--muted);font-size:13px}.button-link{display:inline-block;text-decoration:none}.dark .jurisprudence-heading h1,.dark .jurisprudence-card h2,.dark .jurisprudence-detail h2{color:var(--ink)}.dark .jurisprudence-count{background:#172131}.dark .jurisprudence-filters input,.dark .jurisprudence-filters select{background:#202d3f;color:var(--ink);border-color:#3a4a60}.dark .jurisprudence-detail{background:var(--panel)}@media(max-width:850px){.jurisprudence-heading{align-items:flex-start;flex-direction:column}.jurisprudence-count{width:100%;text-align:left;display:flex;justify-content:space-between;align-items:center}.jurisprudence-layout{grid-template-columns:1fr}.jurisprudence-detail{position:static;max-height:none}.jurisprudence-filters label,.jurisprudence-filters .search-field{width:100%}.jurisprudence-filters .primary-button{width:100%}}
.jurisprudence-count small{display:block;margin-top:6px;color:#dce4ef;font-size:11px;font-weight:700;letter-spacing:.01em}

/* Justificação global dos textos corridos do Sistema Lei Certa */
p, blockquote, li, dd, .legal-text, .answer-feedback, .juris-q-feedback,
.error-legal blockquote, .feedback-legal blockquote, .question-topic,
.simulation-question p, .jurisprudence-detail p, .lc-modal p, .empty-state span,
.detail-body, .muted, .lead {
  text-align: justify;
  text-justify: inter-word;
  text-align-last: left;
  hyphens: auto;
  -webkit-hyphens: auto;
}
button, a, select, option, label, .eyebrow, .feedback-title, .juris-q-meta,
.period-card span, .rank-row small, .progress-row small, .error-badge, small {
  text-align: inherit;
}
button, a, select, option, .eyebrow, .feedback-title, .juris-q-meta, .error-badge { text-align: center; }

/* Fundamentação jurisprudencial: bloco corrido sempre justificado, inclusive em telas pequenas. */
.jurisprudence-detail p{display:block;width:100%;text-align:justify;text-align-last:left;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}

@media(max-width:850px){
  .jurisprudence-detail.inline-mobile-detail{position:static;display:block;max-height:none;margin:0 0 4px;padding:20px;border-radius:14px;border-top-width:4px;box-shadow:0 8px 18px rgba(13,27,48,.10)}
}

.jurisprudence-card{position:relative;padding-bottom:56px}
.jurisprudence-card.is-read{border-color:#5a9b7a}
.jurisprudence-read-control{position:absolute;right:16px;bottom:14px;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:12px;font-weight:800;letter-spacing:.02em;cursor:pointer}
.jurisprudence-read-control input{width:16px;height:16px;margin:0;accent-color:var(--red);cursor:pointer}
.jurisprudence-card.is-read .jurisprudence-read-control{color:#28734d}
.jurisprudence-read-control input:focus-visible{outline:3px solid rgba(179,41,53,.28);outline-offset:2px}

/* Texto longo: justificação real, sem quebras de linha artificiais do PDF/HTML. */
.juris-q-feedback, .juris-q-feedback p, .juris-q-feedback .legal-text, .juris-q-deepening p, .jurisprudence-detail p {
  text-align: justify;
  text-align-last: left;
  text-justify: inter-word;
  white-space: normal;
  word-spacing: normal;
  letter-spacing: normal;
  line-height: 1.72;
  overflow-wrap: anywhere;
}
