.rpc { max-width: 960px; margin: 1.5em auto; padding: 18px; border: 1px solid #d0d5dd; border-radius: 12px; background: #fff; color: #1d2939; font-size: 15px; line-height: 1.5; box-sizing: border-box; }
.rpc *, .rpc *::before, .rpc *::after { box-sizing: border-box; }
.rpc-title { margin: 0 0 12px; font-size: 1.25em; }
.rpc-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 14px; }
.rpc-tab { padding: 8px 14px; border: 1px solid #d0d5dd; background: #f9fafb; color: #344054; border-radius: 8px; cursor: pointer; font-size: 14px; }
.rpc-tab.rpc-on { background: #0e7490; border-color: #0e7490; color: #fff; }
.rpc-hint { margin: 0 0 8px; color: #475467; }
.rpc-input { width: 100%; font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 14px; padding: 10px; border: 1px solid #d0d5dd; border-radius: 8px; resize: vertical; }
.rpc-extra { margin: 8px 0; font-size: 14px; }
.rpc-bar { display: flex; gap: 8px; margin: 10px 0; }
.rpc-btn { padding: 9px 18px; border: 0; border-radius: 8px; background: #0e7490; color: #fff; cursor: pointer; font-size: 14px; }
.rpc-btn.rpc-alt { background: #eaecf0; color: #344054; }
.rpc-scroll { overflow-x: auto; }
.rpc-table { width: 100%; border-collapse: collapse; font-size: 13.5px; }
.rpc-table th, .rpc-table td { padding: 7px 9px; border-bottom: 1px solid #eaecf0; text-align: left; vertical-align: top; }
.rpc-table th { background: #f2f4f7; }
.rpc-table tbody tr { cursor: pointer; }
.rpc-table tbody tr:hover { background: #f9fafb; }
.rpc-table tr.rpc-best td:first-child { font-weight: 700; color: #0e7490; }
.rpc-table tr.rpc-sel { background: #ecfeff; }
.rpc-canvas { display: block; width: 100%; margin-top: 14px; }
.rpc-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin: 10px 0; }
.rpc-cards div { padding: 12px; border: 1px solid #eaecf0; border-radius: 10px; background: #f9fafb; }
.rpc-cards small { display: block; color: #667085; }
.rpc-cards b { font-size: 1.4em; }
.rpc-note { font-size: 13px; color: #667085; }
.rpc-ok { color: #027a48; font-weight: 600; }
.rpc-bad, .rpc-err { color: #b42318; font-weight: 600; }
.rpc-foot { margin: 16px 0 0; font-size: 12.5px; color: #667085; border-top: 1px solid #eaecf0; padding-top: 10px; }

/* v1.1.0 additions */
.rpc-extra { display: flex; flex-wrap: wrap; gap: 8px 22px; align-items: center; }
.rpc-extra label { display: inline-flex; gap: 6px; align-items: center; }
.rpc-extra input[type=number] { width: 72px; padding: 4px 6px; border: 1px solid #d0d5dd; border-radius: 6px; }
.rpc-extra select { padding: 4px 6px; border: 1px solid #d0d5dd; border-radius: 6px; }
.rpc-bar { flex-wrap: wrap; }
.rpc-h4 { margin: 18px 0 6px; font-size: 1em; }
.rpc-ci { color: #667085; font-size: 12.5px; }
.rpc-warn { padding: 8px 12px; background: #fffaeb; border: 1px solid #fedf89; border-radius: 8px; color: #93370d; font-size: 13.5px; }
.rpc-grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
@media (max-width: 680px) { .rpc-grid2 { grid-template-columns: 1fr; } }
.rpc-check { list-style: none; margin: 6px 0 12px; padding: 0; }
.rpc-check li { padding: 3px 0; }
.rpc-check .ok { color: #027a48; } .rpc-check .bad { color: #b42318; font-weight: 600; } .rpc-check .na { color: #667085; }
.rpc-table tr.rpc-muted td { color: #98a2b3; }
