.rprf { max-width: 860px; }
.rprf-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 16px; }
.rprf-tab {
  padding: 8px 12px; font-size: 13px; font-weight: 700; border: 1px solid #d9e0d4; border-radius: 6px;
  background: #fff; cursor: pointer; color: #27331f;
}
.rprf-tab-active { background: #19616a; border-color: #19616a; color: #fff; }
.rprf-panel { display: flex; flex-direction: column; gap: 14px; }
.rprf-panel label { display: flex; flex-direction: column; gap: 4px; font-size: 13px; font-weight: 700; color: #27331f; }
.rprf-panel input, .rprf-panel select { padding: 9px 11px; font-size: 14.5px; border: 1px solid #d9e0d4; border-radius: 6px; }
.rprf-panel input:focus, .rprf-panel select:focus { outline: 2px solid #19616a; outline-offset: 1px; }

.rprf-search-row { display: flex; flex-direction: column; gap: 4px; }
.rprf-count { font-size: 12.5px; color: #5b6b56; margin: 0; }

.rprf-section-title { font-size: 14px; font-weight: 700; color: #27331f; margin: 4px 0 -6px; }
.rprf-hint { font-size: 12.5px; color: #5b6b56; margin: 4px 0 0; }
.rprf-lead { font-size: 13.5px; color: #27331f; margin: 0; }

/* Folder tree (details/ul, same pattern as the NBT inspector) */
.rprf-tree {
  font-family: ui-monospace, monospace; font-size: 13px; color: #27331f;
  background: #f3f4f8; border: 1px solid #d9e0d4; border-radius: 6px; padding: 10px 12px;
  max-height: 560px; overflow: auto;
}
.rprf-tree ul { list-style: none; margin: 0; padding-left: 18px; }
.rprf-tree > ul { padding-left: 0; }
.rprf-tree li { margin: 3px 0; }
.rprf-tree details > summary { cursor: pointer; }
.rprf-tree summary { list-style: revert; }
.rprf-node-name { color: #19616a; font-weight: 700; }
.rprf-node-desc { color: #5b6b56; font-size: 12px; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.rprf-node-file { color: #27331f; }

/* Code / JSON example blocks */
.rprf-code {
  display: block; font-family: ui-monospace, monospace; font-size: 13px; color: #27331f;
  background: #f3f4f8; border: 1px solid #d9e0d4; border-radius: 6px; padding: 12px 14px;
  white-space: pre-wrap; word-break: break-word; overflow-x: auto;
}
.rprf-code .rprf-code-key { color: #19616a; }

/* Generic reference table (pack_format map, field breakdown) */
.rprf-table-wrap { overflow-x: auto; }
.rprf-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.rprf-table th, .rprf-table td { padding: 8px 10px; border-bottom: 1px solid #d9e0d4; text-align: left; vertical-align: top; }
.rprf-table th { color: #5b6b56; font-size: 11.5px; text-transform: uppercase; letter-spacing: .02em; }
.rprf-table td { color: #27331f; }
.rprf-table td code, .rprf-table th code { font-family: ui-monospace, monospace; }

/* Searchable list-of-cards (sound events) */
.rprf-cards { display: flex; flex-direction: column; gap: 10px; }
.rprf-card {
  padding: 12px 14px; background: #f3f4f8; border: 1px solid #d9e0d4; border-radius: 6px;
  display: flex; flex-direction: column; gap: 8px;
}
.rprf-card-id { font-family: ui-monospace, monospace; font-size: 13.5px; font-weight: 700; color: #19616a; }
.rprf-card-sub { font-size: 12px; color: #5b6b56; }
.rprf-empty { padding: 14px 12px; font-size: 13px; color: #5b6b56; background: #f3f4f8; border: 1px dashed #d9e0d4; border-radius: 6px; }

.rprf-note { margin-top: 16px; font-size: 13px; color: #5b6b56; }

@media (max-width: 480px) {
  .rprf-table th:nth-child(3), .rprf-table td:nth-child(3) { display: none; }
}
