/* CAIN-42 API reference pages. Only the existing --c42-* tokens (cain-pages.css), like cain-library.css. */
.ca-m { display: inline-block; min-width: 54px; text-align: center; font-family: var(--c42-mono); font-size: 11px; font-weight: 600;
  letter-spacing: .04em; border: 1px solid var(--c42-line-strong); border-radius: 6px; padding: 2px 6px; color: var(--c42-dim); }
.ca-m-get { color: var(--c42-ok); border-color: var(--c42-ok); }
.ca-m-post { color: var(--c42-text); border-color: var(--c42-red); }
.ca-m-put, .ca-m-patch { color: var(--c42-warn); border-color: var(--c42-warn); }
.ca-m-delete { color: var(--c42-bad); border-color: var(--c42-bad); background: var(--c42-red-dim); }
.ca-line { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.ca-path { font-size: 15px; word-break: break-all; }
.ca-dim { color: var(--c42-faint); font-size: 12.5px; }
.ca-req { font-family: var(--c42-mono); font-size: 10px; font-weight: 600; color: var(--c42-warn); text-transform: uppercase; }
.ca-scroll { overflow-x: auto; }
.ca-fields td:first-child, .ca-ops td:nth-child(2) { white-space: nowrap; }
.ca-ops td:first-child { width: 1%; }
.ca-ops tr[hidden] { display: none; }
.ca-desc p { color: var(--c42-dim); }
.ca-console { background: var(--c42-raised); border: 1px solid var(--c42-line); border-radius: 10px; padding: 14px; }
.ca-field { display: flex; flex-direction: column; gap: 4px; margin: 0 0 10px; font-size: 13px; }
.ca-field span { color: var(--c42-dim); }
.ca-field i { font-style: normal; color: var(--c42-faint); font-family: var(--c42-mono); font-size: 11px; }
.ca-field input, .ca-field textarea { width: 100%; box-sizing: border-box; background: var(--c42-sunken); color: var(--c42-text);
  border: 1px solid var(--c42-line-strong); border-radius: 8px; padding: 8px 10px; font-family: var(--c42-mono); font-size: 13px; }
.ca-field textarea { resize: vertical; min-height: 80px; }
.ca-field input:focus, .ca-field textarea:focus { outline: none; border-color: var(--c42-red); }
.ca-remember { display: flex; align-items: center; gap: 8px; font-size: 13px; color: var(--c42-dim); margin: -4px 0 12px; }
.ca-warnline { color: var(--c42-warn); }
.ca-out { margin-top: 10px; }
.ca-out pre { max-height: 480px; overflow: auto; font-size: 12px; }
.ca-status { font-size: 13px; color: var(--c42-dim); }
.ca-status b { font-family: var(--c42-mono); font-size: 15px; margin-right: 4px; }
.ca-hint { font-size: 13px; color: var(--c42-dim); border-left: 2px solid var(--c42-red); padding-left: 10px; }
.ca-tabs { display: flex; gap: 6px; margin: 8px 0 0; }
.ca-tabs button { background: transparent; color: var(--c42-dim); border: 1px solid var(--c42-line-strong); border-radius: 8px 8px 0 0;
  padding: 6px 12px; font: inherit; font-size: 13px; cursor: pointer; }
.ca-tabs button[aria-selected="true"] { color: var(--c42-text); border-color: var(--c42-red); background: var(--c42-red-dim); }
.ca-code { margin-top: 0; }
.ca-filter { max-width: 460px; padding-right: 12px; }
@media (max-width: 640px) { .ca-fields td:first-child, .ca-ops td:nth-child(2) { white-space: normal; word-break: break-all; } }
.ca-code, .ca-pre, .ca-out pre { overflow-x: auto; max-width: 100%; box-sizing: border-box; }
.cr-step { margin: 28px 0; }
.cr-step h2 { display: flex; align-items: center; gap: 10px; }
.cr-n { display: inline-grid; place-items: center; width: 30px; height: 30px; flex: 0 0 30px; border-radius: 50%;
  background: var(--c42-red-dim); border: 1px solid var(--c42-red); font-family: var(--c42-mono); font-size: 14px; }
.ca-keybox { margin-bottom: 8px; }
a.tp-card { display: block; text-decoration: none; }
