/* WISPA · /api — documentación. Usa los tokens de sitio.css (grafito + lima). */
.api-fila{display:block}
.api-indice{margin:0 0 1.4rem;border:1px solid var(--borde);background:var(--fondo-2);border-radius:var(--radio);padding:.1rem 1rem}
.api-indice summary{cursor:pointer;font-weight:700;padding:.75rem 0;min-height:44px}
.api-indice ol{list-style:none;margin:0 0 .8rem;padding:0}
.api-indice ol ol{margin:.2rem 0 .3rem;padding-left:.9rem;border-left:2px solid var(--borde)}
.api-indice li{margin:.1rem 0}
.api-indice a{display:flex;align-items:center;gap:.45rem;padding:.38rem .4rem;border-radius:8px;text-decoration:none;color:var(--texto);font-size:.95rem}
.api-indice a:hover{background:var(--primario-claro)}
.api-indice a[aria-current]{background:var(--primario-claro);color:var(--primario);font-weight:700}
.api-cuerpo{min-width:0}
.api-cuerpo h2{scroll-margin-top:76px}
.api-bloque{padding-bottom:1.2rem;margin-bottom:1.6rem;border-bottom:1px solid var(--borde);scroll-margin-top:76px}
.api-bloque:last-child{border-bottom:0}
.api-bloque h3{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem;font-size:1.3rem;margin-top:0}
.api-bloque h4{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--suave);margin:1.5rem 0 .5rem}
.api-titulo-endpoints{margin-top:2rem}
.ruta code{font-size:1rem;background:none;padding:0;font-weight:700}
.permiso{color:var(--suave);font-size:.95rem}
.metodo{display:inline-block;font:700 .72rem/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.04em;padding:.3rem .45rem;border-radius:6px;background:var(--grafito);color:var(--lima)}
.metodo-post{background:var(--lima);color:var(--grafito)}
.api-indice .metodo{font-size:.62rem;padding:.22rem .34rem;flex:none}
.api-pasos{padding-left:1.4rem}
.api-pasos li{margin:.35em 0;display:list-item}

/* Código */
.codigo{margin:.7rem 0 1rem;border-radius:var(--radio);overflow:hidden;background:#171b19;color:#eef1e8;border:1px solid #2c332e}
.codigo-barra{display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.35rem .5rem .35rem .9rem;background:#232925;font-size:.8rem;color:#a9b0a6}
.codigo-copiar{display:inline-flex;align-items:center;gap:.35rem;min-height:36px;padding:.3rem .7rem;border-radius:8px;border:1px solid #59625c;background:transparent;color:#eef1e8;font:inherit;font-size:.82rem;font-weight:600;cursor:pointer}
.codigo-copiar:hover{background:#2f3732;border-color:#98c93c}
.codigo-copiar .codigo-ok{width:1em;height:1em;display:none}
.codigo-copiar.copiado{background:var(--lima);border-color:var(--lima);color:var(--grafito)}
.codigo-copiar.copiado .codigo-ok{display:inline-block}
.prosa .codigo pre,.codigo pre{margin:0;border-radius:0;padding:.9rem 1rem;overflow-x:auto;background:transparent;font-size:.86rem;line-height:1.55}
.codigo pre:focus-visible{outline-offset:-3px}
.prosa .codigo pre code,.codigo code{background:none;color:inherit;padding:0;white-space:pre}

/* Tablas y notas */
.api-tabla{width:100%;border-collapse:collapse;font-size:.93rem;line-height:1.45}
.api-tabla th,.api-tabla td{text-align:left;vertical-align:top;padding:.55rem .7rem;border-bottom:1px solid var(--borde)}
.api-tabla th{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:var(--suave);background:var(--fondo-2)}
.api-tabla td:first-child{white-space:nowrap}
.tabla-scroll{overflow-x:auto;margin:.4rem 0 1rem;border:1px solid var(--borde);border-radius:var(--radio)}
.tabla-scroll .api-tabla tr:last-child td{border-bottom:0}
.api-notas{padding-left:1.2rem;font-size:.97rem}
.resp-nota{font-size:.95rem;margin:.5rem 0 1rem;padding:.7rem .9rem;border-left:4px solid var(--lima);background:var(--fondo-2);border-radius:0 var(--radio) var(--radio) 0}
.api-prox{list-style:none;margin:0 0 1rem;padding:0;display:grid;grid-template-columns:1fr;gap:.6rem}
.api-prox li{display:flex;flex-direction:column;padding:.8rem 1rem;border:1px dashed var(--borde);border-radius:var(--radio);background:var(--fondo-2)}
.api-prox span{color:var(--suave);font-size:.93rem}

@media (min-width:560px){.api-prox{grid-template-columns:1fr 1fr}}
@media (min-width:960px){
  .api-fila{display:grid;grid-template-columns:260px minmax(0,1fr);gap:2.4rem;align-items:start}
  .api-indice{position:sticky;top:84px;max-height:calc(100vh - 100px);overflow-y:auto;margin:0}
  .api-indice summary{pointer-events:none;cursor:default}
}
@media (prefers-reduced-motion:reduce){.codigo-copiar{transition:none}}
.api-indice .metodo{min-width:2.9rem;text-align:center}
@media (min-width:960px){.api-indice summary{list-style:none}.api-indice summary::-webkit-details-marker{display:none}}

/* Celular: las tablas se vuelven tarjetas apiladas (sin scroll lateral) */
@media (max-width:639px){
  .tabla-scroll{border:0;border-radius:0;overflow:visible}
  .api-tabla,.api-tabla tbody,.api-tabla tr,.api-tabla td{display:block;width:100%}
  .api-tabla thead{display:none}
  .api-tabla tr{padding:.7rem .85rem;margin:0 0 .6rem;border:1px solid var(--borde);border-radius:var(--radio);background:var(--superficie)}
  .api-tabla td{padding:.12rem 0;border:0}
  .api-tabla td:first-child{white-space:normal;word-break:break-word}
  .api-tabla td[data-t]{display:inline-block;width:auto;margin-right:.8rem;color:var(--suave);font-size:.88rem}
  .api-tabla td[data-t]::before{content:attr(data-t) ": ";font-size:.75rem;text-transform:uppercase;letter-spacing:.04em}
  .api-tabla td:last-child:not([data-t]){display:block;margin-top:.25rem}
}
