.registry-badge { display:block; padding:12px; border-radius:14px; background:#f2f7f3; color:#24523b; font-size:13px; }
.registry-badge summary { cursor:pointer; font-weight:600; }
.registry-badge p { margin:8px 0; }
.registry-editor { margin-top:24px; padding:20px; border:1px solid #e4d5da; border-radius:18px; }
.registry-editor form { display:grid; gap:12px; }
.registry-editor label { display:grid; gap:6px; }
.registry-editor input:not([type=checkbox]), .registry-editor select { width:100%; padding:12px; border:1px solid #d9c9cf; border-radius:10px; box-sizing:border-box; }
.registry-editor button { padding:12px; background:#800020; color:white; border:0; border-radius:10px; cursor:pointer; }
.registry-editor button:disabled { opacity:.5; cursor:wait; }
.registry-sort-label { display:grid; gap:8px; max-width:420px; }
.registry-sort-label select { padding:12px; border:1px solid #d9c9cf; border-radius:12px; background:white; max-width:100%; }
.registry-editor .registry-confirm { display:block; }

:root {
  --registry-ok-bg: #e8f5ef;
  --registry-ok-ink: #176342;
  --registry-ok-line: #a9d7c0;
  --registry-neutral-bg: #f1f5fa;
  --registry-neutral-ink: #425873;
  --registry-neutral-line: #d3deeb;
  --registry-focus: #1466ff;
}
html[data-theme="dark"], html[data-v20-theme="dark"], body[data-theme="dark"], body[data-v20-theme="dark"] {
  --registry-ok-bg: #113d35;
  --registry-ok-ink: #9de6c1;
  --registry-ok-line: #347562;
  --registry-neutral-bg: #192e47;
  --registry-neutral-ink: #c4d4e8;
  --registry-neutral-line: #3f5978;
  --registry-focus: #89b7ff;
}
.agent-directory-registry { margin: 0 0 16px; min-width: 0; }
[data-agent-public-registry] { max-width: 560px; margin-top: 20px; }
.registry-badge {
  padding: 0 14px; border: 1px solid var(--registry-neutral-line); border-radius: 12px;
  background: var(--registry-neutral-bg); color: var(--registry-neutral-ink);
  font-size: 14px; line-height: 1.5; overflow-wrap: anywhere;
}
.registry-badge--verified { background: var(--registry-ok-bg); color: var(--registry-ok-ink); border-color: var(--registry-ok-line); }
.registry-badge summary { min-height: 46px; display: flex; align-items: center; gap: 10px; font-weight: 700; cursor: pointer; list-style: none; }
.registry-badge summary::-webkit-details-marker { display: none; }
.registry-badge summary::after { content: '+'; margin-left: auto; flex: none; font-size: 18px; font-weight: 500; }
.registry-badge[open] summary::after { content: '−'; }
.registry-status-icon { display: inline-grid; place-items: center; flex: none; width: 20px; height: 20px; border: 1px solid currentColor; border-radius: 50%; font-size: 13px; }
.registry-badge p { margin: 8px 0 12px; color: inherit; }
.registry-badge a { display: inline-flex; align-items: center; min-height: 44px; color: inherit !important; text-decoration: underline; text-underline-offset: 3px; font-weight: 600; }
.registry-badge summary:focus-visible, .registry-badge a:focus-visible, #agentRegistrySort:focus-visible { outline: 3px solid var(--registry-focus); outline-offset: 3px; }
.registry-sort-label { gap: 6px; max-width: 100%; }
.registry-sort-label select { min-height: 44px; background: var(--registry-neutral-bg); color: var(--registry-neutral-ink); border-color: var(--registry-neutral-line); }
@media (max-width: 480px) { .registry-badge { font-size: 13px; padding-inline: 12px; } }
