.rdr-infra{margin:1em 0}.rdr-inf-msg{margin:.6em 0}.rdr-inf-err{color:#dc2626}.rdr-inf-note{font-size:.9em;opacity:.8;margin:.4em 0}.rdr-inf-btn{display:inline-block;padding:.4em .9em;border-radius:8px;border:1px solid var(--rdr-accent,#2563eb);background:var(--rdr-accent,#2563eb);color:#fff;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}.rdr-inf-btn:disabled{opacity:.5;cursor:not-allowed}.rdr-inf-ghost{background:0 0;color:inherit;border-color:var(--rdr-border,#9aa)}.rdr-inf-danger{background:0 0;color:#dc2626;border-color:#dc2626}.rdr-inf-gate,.rdr-inf-link,.rdr-inf-card{border:1px solid var(--rdr-border,#ccd);border-radius:12px;padding:.8em 1em;margin:.6em 0}.rdr-inf-new,.rdr-inf-row,.rdr-inf-head{display:flex;flex-wrap:wrap;gap:.5em;align-items:center;margin:.6em 0}.rdr-inf-new input,.rdr-inf-head input{flex:1 1 14em;min-width:0}.rdr-inf-infra input,.rdr-infra input[type=text],.rdr-infra input[type=search],.rdr-infra select,.rdr-infra textarea{padding:.35em .5em;border:1px solid var(--rdr-border,#9aa);border-radius:6px;background:0 0;color:inherit;font:inherit;max-width:100%}.rdr-inf-docs{list-style:none;padding:0}.rdr-inf-docs li{display:flex;justify-content:space-between;gap:1em;align-items:center;border:1px solid var(--rdr-border,#ccd);border-radius:10px;padding:.6em .9em;margin:.5em 0}.rdr-inf-docs small{display:block;opacity:.75}.rdr-inf-tag{margin-left:.6em;padding:.05em .5em;border-radius:99px;background:color-mix(in srgb,var(--rdr-accent,#2563eb) 18%,transparent);font-size:.78em}.rdr-inf-tabs{display:flex;flex-wrap:wrap;gap:.3em;border-bottom:1px solid var(--rdr-border,#ccd);margin:.8em 0}.rdr-inf-tabs button{padding:.45em .9em;border:0;border-bottom:3px solid transparent;background:0 0;color:inherit;font:inherit;cursor:pointer}.rdr-inf-tabs button[aria-selected=true]{border-bottom-color:var(--rdr-accent,#2563eb);font-weight:700}.rdr-inf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(14em,1fr));gap:.6em;margin:.7em 0}.rdr-inf-f{display:flex;flex-direction:column;gap:.2em;font-size:.9em}.rdr-inf-f>span{opacity:.8}.rdr-inf-ico,.rdr-inf-thumb{object-fit:contain;vertical-align:middle}.rdr-inf-thumb{width:64px;height:48px}.rdr-inf-scroll{overflow:auto;max-width:100%}.rdr-inf-board .rdr-inf-scroll{overflow:visible}.rdr-inf-table{border-collapse:collapse;width:100%}.rdr-inf-table th,.rdr-inf-table td{border:1px solid var(--rdr-border,#ccd);padding:.3em .45em;text-align:left;vertical-align:top}.rdr-inf-table input[type=text]{width:100%;min-width:7em}.rdr-inf-svg{display:block;width:100%;height:auto;background:color-mix(in srgb,var(--rdr-accent,#2563eb) 4%,transparent);border:1px solid var(--rdr-border,#ccd);border-radius:10px;touch-action:none}.rdr-inf-nbox{fill:#fff;stroke:#94a3b8;stroke-width:1.5}.rdr-inf-node{cursor:grab}.rdr-inf-node:focus .rdr-inf-nbox{stroke:var(--rdr-accent,#2563eb);stroke-width:3}.rdr-inf-edge{stroke:#64748b;stroke-width:2}.rdr-inf-e-fiber{stroke-width:4}.rdr-inf-nname{font:600 13px sans-serif;fill:#0f172a}.rdr-inf-nip{font:11px monospace;fill:#475569}.rdr-inf-nsvc{font:10px monospace;fill:#334155}.rdr-inf-elabel{font:11px monospace;fill:currentColor;opacity:.85}.rdr-inf-nicon{font-size:34px}.rdr-inf-mm{overflow:auto}.rdr-inf-chk{display:block;margin:.3em 0}.rdr-inf-status{font-size:.9em;opacity:.8}.rdr-inf-modal{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1em}.rdr-inf-modal-in{background:var(--rdr-bg,#fff);color:inherit;border-radius:12px;padding:1em;max-width:52em;width:100%;max-height:90vh;overflow:auto}.rdr-inf-vlist{display:flex;flex-wrap:wrap;gap:.4em;margin:.6em 0}.rdr-inf-igrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(8em,1fr));gap:.5em;margin:.6em 0}.rdr-inf-pimg{display:flex;flex-direction:column;align-items:center;gap:.2em;padding:.4em;border:1px solid var(--rdr-border,#ccd);border-radius:8px;background:0 0;color:inherit;font:inherit;font-size:.8em;cursor:pointer}.rdr-inf-pimg img{object-fit:contain}@media print{.rdr-inf-tabs,.rdr-inf-head,.rdr-inf-back,.rdr-inf-row{display:none}}.rdr-infra a.rdr-inf-btn,.rdr-infra a.rdr-inf-btn:visited{background:#1d4ed8;color:#fff;border-color:#1e3a8a;text-decoration:none}.rdr-infra button.rdr-inf-btn:not(.rdr-inf-ghost):not(.rdr-inf-danger){background:#1d4ed8;color:#fff;border-color:#1e3a8a}