/* telas/jurisprudencia.css (M15) — índice, página do precedente, panorama por tema e admin da jurisprudência citável.
   Só tokens do design system (C §3); componentes (.btn, .chip, .campo, .aviso, .stat, .tabela, .vazio) são do M02.
   Leitura jurídica em fonte de leitura; natureza marcada por uma cor categórica discreta; celular, tablet, desktop e TV. */
@layer telas {
  .jur { --jur-cor: var(--accent); min-width: 0; }
  .jur-pagina { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sp-6); }
  .jur-pagina > * { min-width: 0; }
  [data-natureza="sumula_vinculante"] { --jur-cor: var(--cat-1); }
  [data-natureza^="sumula_s"], [data-natureza="sumula_tst"] { --jur-cor: var(--cat-2); }
  [data-natureza^="tema_"] { --jur-cor: var(--cat-3); }
  [data-natureza="tese_stj"] { --jur-cor: var(--cat-4); }
  [data-natureza$="_tst"]:not([data-natureza="sumula_tst"]) { --jur-cor: var(--cat-5); }
  [data-natureza^="informativo"] { --jur-cor: var(--cat-6); }
  [data-natureza="enunciado_cjf"] { --jur-cor: var(--cat-7); }
  [data-natureza^="acordao"], [data-natureza^="irdr"] { --jur-cor: var(--cat-8); }

  /* ------------------------------------------------------------ trilha */
  .jur-migalhas ol { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-1) var(--sp-2); margin: 0; padding: 0; list-style: none;
    font-size: var(--fs-sm); color: var(--text-3); }
  .jur-migalhas li { display: inline-flex; align-items: center; gap: var(--sp-2); min-width: 0; }
  .jur-migalhas li + li::before { content: "/"; color: var(--border-strong); }
  .jur-migalhas a { color: var(--text-2); text-decoration: none; min-height: var(--alvo-min); display: inline-flex; align-items: center; }
  .jur-migalhas a:hover { color: var(--accent-text); text-decoration: underline; text-underline-offset: 3px; }
  .jur-migalhas [aria-current="page"] { color: var(--text); font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 60vw; }

  /* ------------------------------------------------------------ cabeçalho */
  .jur-cabeca { display: grid; gap: var(--sp-3); padding-bottom: var(--sp-5); border-bottom: 1px solid var(--border); }
  .jur-cabeca__natureza { display: inline-flex; align-items: center; gap: var(--sp-2); color: var(--jur-cor); }
  .jur-cabeca__natureza .i { width: 16px; height: 16px; }
  .jur-cabeca__titulo { font-size: var(--fs-2xl); letter-spacing: -0.02em; line-height: var(--lh-tight); text-wrap: balance; }
  .jur-cabeca .subtitulo-pagina { margin: 0; font-size: var(--fs-md); text-wrap: pretty; }
  .jur-cabeca__selos { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2) var(--sp-3); margin-top: var(--sp-1); }
  .jur-meta { display: inline-flex; align-items: center; gap: var(--sp-2); min-height: 32px; color: var(--text-2); font-size: var(--fs-sm); font-weight: 600; }
  .jur-meta .i { width: 16px; height: 16px; color: var(--text-3); }
  .jur-meta--link { text-decoration: none; min-height: var(--alvo-min); }
  .jur-meta--link:hover { color: var(--accent-text); }
  .jur-situacao {
    display: inline-flex; align-items: center; gap: var(--sp-1); min-height: 28px; padding: 0 var(--sp-3); border-radius: var(--r-full);
    font-size: var(--fs-xs); font-weight: 700; letter-spacing: .01em; white-space: nowrap; background: var(--surface-2); color: var(--text-2);
  }
  .jur-situacao .i { width: 14px; height: 14px; }
  .jur-situacao[data-situacao="vigente"] { background: var(--success-soft); color: var(--success-strong); }
  .jur-situacao[data-situacao="historico"] { background: var(--warning-soft); color: var(--warning-strong); }
  .jur-situacao[data-situacao="pendente"] { background: var(--info-soft); color: var(--info-strong); }

  /* ------------------------------------------------------------ texto oficial */
  .jur-texto { display: grid; gap: var(--sp-4); }
  .jur-texto__titulo, .jur-bloco__titulo { font-size: var(--fs-md); font-weight: 700; letter-spacing: -0.01em; color: var(--text); }
  .jur-citacao {
    position: relative; margin: 0; padding: clamp(var(--sp-5), 4vw, var(--sp-8)) clamp(var(--sp-5), 4vw, var(--sp-8));
    border-radius: var(--r-xl); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--sh-1);
    font-family: var(--font-read); font-size: var(--fs-read); line-height: var(--lh-read); color: var(--text);
    border-left: 4px solid var(--jur-cor); overflow-wrap: anywhere;
  }
  .jur-citacao p { margin: 0; text-wrap: pretty; }
  .jur-citacao p + p { margin-top: var(--sp-3); }
  .jur-acoes { display: flex; flex-wrap: wrap; gap: var(--sp-3); }
  .jur-bloco { display: grid; gap: var(--sp-3); }
  .jur-prosa { font-family: var(--font-read); font-size: var(--fs-base); line-height: var(--lh-read); color: var(--text-2); overflow-wrap: anywhere; }
  .jur-prosa p { margin: 0; }
  .jur-prosa p + p { margin-top: var(--sp-2); }
  .jur-dados { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: var(--sp-2) var(--sp-4); margin: 0; }
  .jur-dados > div { display: grid; gap: var(--sp-1); padding: var(--sp-3) var(--sp-4); border-radius: var(--r-lg); background: var(--surface-2); min-width: 0; }
  .jur-dados dt { font-size: var(--fs-xs); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; color: var(--text-3); }
  .jur-dados dd { margin: 0; color: var(--text); font-weight: 600; overflow-wrap: anywhere; }
  .jur-chips { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin: 0; padding: 0; list-style: none; }
  .jur-chips .chip { white-space: normal; text-align: left; min-height: var(--alvo-min); }
  .jur-nota { display: flex; align-items: flex-start; gap: var(--sp-2); margin: 0; font-size: var(--fs-sm); color: var(--text-3); line-height: var(--lh-ui); }
  .jur-nota .i { flex: none; width: 16px; height: 16px; margin-top: 2px; }

  /* ------------------------------------------------------------ listas de itens */
  .jur-lista { display: grid; gap: var(--sp-3); margin: 0; padding: 0; list-style: none; }
  .jur-lista--grade { grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); }
  .jur-item { min-width: 0; }
  .jur-item__link {
    display: grid; gap: var(--sp-2); align-content: start; height: 100%; padding: var(--sp-4) var(--sp-5); border-radius: var(--r-lg);
    background: var(--surface); border: 1px solid var(--border); box-shadow: var(--sh-1); color: var(--text); text-decoration: none;
    border-left: 3px solid var(--jur-cor);
    transition: border-color var(--dur-1) var(--ease-out), box-shadow var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-out);
  }
  .jur-item__link:hover { border-color: var(--accent-border); border-left-color: var(--jur-cor); box-shadow: var(--sh-2); }
  @media (prefers-reduced-motion: no-preference) {
    :root:not([data-movimento="reduzido"]):not([data-modo="tv"]) .jur-item__link:hover { transform: translateY(-2px); }
  }
  .jur-item__topo { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--sp-2); flex-wrap: wrap; }
  .jur-item__rotulo { font-weight: 700; font-size: var(--fs-sm); color: var(--text); letter-spacing: -0.005em; }
  .jur-item__texto { font-family: var(--font-read); font-size: var(--fs-base); line-height: var(--lh-read); color: var(--text-2);
    display: -webkit-box; -webkit-line-clamp: 5; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
  .jur-item__data { font-size: var(--fs-xs); color: var(--text-3); font-weight: 600; }
  .jur-mais { margin: var(--sp-4) 0 0; font-size: var(--fs-sm); color: var(--text-3); }
  .jur-historico { margin-top: var(--sp-4); border-radius: var(--r-lg); border: 1px dashed var(--border-strong); padding: var(--sp-2) var(--sp-4); }
  .jur-historico > summary {
    display: flex; align-items: center; gap: var(--sp-2); min-height: var(--alvo-min); cursor: pointer; list-style: none;
    font-weight: 700; font-size: var(--fs-sm); color: var(--text-2);
  }
  .jur-historico > summary::-webkit-details-marker { display: none; }
  .jur-historico > summary .i:last-child { margin-left: auto; transition: transform var(--dur-2) var(--ease-out); }
  .jur-historico[open] > summary .i:last-child { transform: rotate(180deg); }
  .jur-historico[open] > .jur-lista { margin: var(--sp-2) 0 var(--sp-3); }

  /* ------------------------------------------------------------ panorama por tema */
  .jur-numeros { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)); gap: var(--sp-3); margin: var(--sp-3) 0 0; padding: 0; list-style: none; }
  .jur-numero { display: grid; gap: var(--sp-1); padding: var(--sp-4); border-radius: var(--r-lg); background: var(--surface); border: 1px solid var(--border); position: relative; overflow: hidden; }
  .jur-numero::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 4px; background: var(--jur-cor); }
  .jur-numero[data-grupo="sumulas_vinculantes"] { --jur-cor: var(--cat-1); }
  .jur-numero[data-grupo="sumulas"] { --jur-cor: var(--cat-2); }
  .jur-numero[data-grupo="temas"] { --jur-cor: var(--cat-3); }
  .jur-numero[data-grupo="teses"] { --jur-cor: var(--cat-4); }
  .jur-numero[data-grupo="tst"] { --jur-cor: var(--cat-5); }
  .jur-numero[data-grupo="informativos"] { --jur-cor: var(--cat-6); }
  .jur-numero__valor { font-size: var(--fs-num); font-weight: 800; letter-spacing: -0.03em; line-height: 1; color: var(--text); }
  .jur-numero__rotulo { font-size: var(--fs-sm); color: var(--text-2); font-weight: 600; }
  .jur-atalhos ul { display: flex; gap: var(--sp-2); margin: 0; padding: 0 0 var(--sp-1); list-style: none; overflow-x: auto; scrollbar-width: thin; }
  @media (min-width: 768px) { .jur-atalhos ul { flex-wrap: wrap; overflow: visible; } }
  .jur-atalhos .chip { min-height: var(--alvo-min); }
  .jur-atalhos .chip[aria-current="page"] { background: var(--accent-soft); color: var(--accent-text); border-color: var(--accent-border); }
  .jur-grupo { scroll-margin-top: calc(var(--topbar) + var(--sp-4)); }
  .jur-grupo[data-grupo="sumulas_vinculantes"] .secao__titulo::before, .jur-grupo .secao__titulo::before {
    content: ""; display: inline-block; width: 10px; height: 10px; border-radius: var(--r-full); margin-right: var(--sp-2); background: var(--accent); vertical-align: middle;
  }
  .jur-grupo[data-grupo="sumulas_vinculantes"] .secao__titulo::before { background: var(--cat-1); }
  .jur-grupo[data-grupo="sumulas"] .secao__titulo::before { background: var(--cat-2); }
  .jur-grupo[data-grupo="temas"] .secao__titulo::before { background: var(--cat-3); }
  .jur-grupo[data-grupo="teses"] .secao__titulo::before { background: var(--cat-4); }
  .jur-grupo[data-grupo="tst"] .secao__titulo::before { background: var(--cat-5); }
  .jur-grupo[data-grupo="informativos"] .secao__titulo::before { background: var(--cat-6); }
  .jur-grupo[data-grupo="enunciados"] .secao__titulo::before { background: var(--cat-7); }
  .jur-grupo[data-grupo="precedentes"] .secao__titulo::before { background: var(--cat-8); }

  /* ------------------------------------------------------------ índice */
  .jur-heroi {
    display: grid; gap: var(--sp-6); align-items: end; padding: clamp(var(--sp-5), 4vw, var(--sp-10));
    border-radius: var(--r-2xl); background: var(--surface); border: 1px solid var(--border); box-shadow: var(--sh-1); position: relative; overflow: hidden;
  }
  .jur-heroi::after {
    content: ""; position: absolute; inset: auto -120px -160px auto; width: 360px; height: 360px; border-radius: var(--r-full);
    background: var(--accent-soft); opacity: .45; pointer-events: none;
  }
  .jur-heroi > * { position: relative; z-index: 1; }
  .jur-heroi .titulo-pagina { font-size: var(--fs-2xl); letter-spacing: -0.03em; }
  @media (min-width: 1024px) { .jur-heroi { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); } }
  .jur-busca { display: grid; gap: var(--sp-3); min-width: 0; }
  .jur-busca__linha { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--sp-3); }
  .jur-numeros--indice { margin-top: 0; }
  /* Colunas no lugar da grade: as áreas têm tamanhos muito diferentes e a grade deixaria buracos (efeito "alvenaria"). */
  .jur-areas { columns: 3 320px; column-gap: var(--sp-4); }
  .jur-area { break-inside: avoid; margin: 0 0 var(--sp-4); padding: var(--sp-5); border-radius: var(--r-xl); background: var(--surface);
    border: 1px solid var(--border); scroll-margin-top: calc(var(--topbar) + var(--sp-4)); }
  .jur-area:target { border-color: var(--accent-border); box-shadow: 0 0 0 3px var(--accent-soft); }
  .jur-area__titulo { display: flex; align-items: center; gap: var(--sp-2); margin: 0 0 var(--sp-3); font-size: var(--fs-md); font-weight: 700; }
  .jur-area__titulo .i { color: var(--accent); width: 18px; height: 18px; }
  .jur-area__temas { display: grid; gap: var(--sp-1); margin: 0; padding: 0; list-style: none; }
  .jur-area__temas a {
    display: flex; align-items: center; justify-content: space-between; gap: var(--sp-3); min-height: var(--alvo-min); padding: var(--sp-2) var(--sp-3);
    border-radius: var(--r-md); color: var(--text); text-decoration: none; font-weight: 600; font-size: var(--fs-base);
    transition: background var(--dur-1) var(--ease-out), color var(--dur-1) var(--ease-out);
  }
  .jur-area__temas a:hover { background: var(--surface-2); color: var(--accent-text); }
  .jur-area__n { flex: none; min-width: 2.5rem; text-align: right; font-size: var(--fs-sm); color: var(--text-3); font-weight: 700; }
  .jur-resultados { margin-top: 0; }

  /* ------------------------------------------------------------ admin */
  .jur-admin { display: grid; gap: var(--sp-5); }
  .jur-admin__cabeca { align-items: flex-end; margin: 0; }
  .jur-admin__importar { display: flex; }
  .jur-admin__stats { gap: var(--sp-4); grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr)); }
  .jur-andamento { display: grid; gap: var(--sp-2); padding: var(--sp-4) var(--sp-5); border-radius: var(--r-lg); background: var(--surface); border: 1px solid var(--border); }
  .jur-andamento__estado { display: flex; align-items: center; gap: var(--sp-2); margin: 0; font-weight: 700; color: var(--text); }
  .jur-andamento__estado .i { color: var(--accent); }
  .jur-andamento__estado[data-estado="ok"] .i { color: var(--success); }
  .jur-andamento__estado[data-estado="nunca"] .i { color: var(--text-3); }
  .jur-andamento[aria-busy="true"] .jur-andamento__estado .i { animation: jur-girar 1.2s linear infinite; }
  .jur-andamento__detalhe { margin: 0; color: var(--text-2); font-size: var(--fs-sm); }
  @keyframes jur-girar { to { transform: rotate(360deg); } }

  /* ------------------------------------------------------------ modo TV: leitura maior, sem sombras que borram */
  :root[data-modo="tv"] .jur-citacao { box-shadow: none; }
  :root[data-modo="tv"] .jur-item__link:focus-visible { transform: scale(1.02); }
  :root[data-modo="tv"] .jur-lista--grade { grid-template-columns: repeat(auto-fill, minmax(22rem, 1fr)); }
  :root[data-modo="tv"] .jur-heroi::after { display: none; }

  @media print {
    .jur-acoes, .jur-migalhas, .jur-busca, .jur-atalhos { display: none; }
    .jur-citacao { box-shadow: none; border-left-width: 2px; }
  }
}
