/* Canonical MCP page only; the shared shell lives in styles-console.css. */
.mcp-connections { min-width: 0; }
.mcp-connections h1, .mcp-connections h2, .mcp-connections h3 { font-family: inherit; color: #242a30; margin: 0; line-height: 1.3; }
.mcp-connections h1 { font-size: 30px; font-weight: 650; }
.mcp-connections h2 { font-size: 16px; font-weight: 650; }
.mcp-connections h3 { font-size: 15px; font-weight: 600; }
.mcp-page-heading, .mcp-section-heading, .mcp-setup-controls, .mcp-list-tools, .mcp-setup-footer, .mcp-command-heading {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
}
.mcp-page-heading { margin: 0 0 28px; }
.mcp-eyebrow { margin: 0 0 8px; font-size: 11px; font-weight: 600; color: #68727d; }
.mcp-icon { display: inline-block; flex: 0 0 18px; width: 18px; height: 18px; vertical-align: middle; opacity: .72; }
.mcp-security-link { display: inline-flex; align-items: center; gap: 7px; font-size: 13px; text-decoration: none; }
.mcp-section-heading h2, .mcp-list-heading { display: flex; align-items: center; gap: 10px; }
.mcp-setup { padding: 24px 0 20px; border-top: 1px solid var(--spot-line); border-bottom: 1px solid var(--spot-line); }
.mcp-section-heading { margin-bottom: 20px; }
.mcp-transport, .mcp-cell-label { color: #68727d; font-size: 11px; }
.mcp-connections fieldset { padding: 0; margin: 0; border: 0; min-width: 0; }
.mcp-segmented { display: inline-flex; gap: 3px; }
.mcp-setup-controls > fieldset { flex: 0 0 auto; width: auto; }
.mcp-connections .mcp-segmented label, .mcp-connections .mcp-filters label { position: relative; margin: 0; font-weight: 500; }
.mcp-segmented input, .mcp-filters input, .mcp-sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.mcp-segmented label > span { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 8px 13px; min-height: 38px; border: 1px solid transparent; border-radius: 5px; color: #57626d; font-size: 13px; cursor: pointer; }
.mcp-segmented input:checked + span { background: #fff; border-color: #cbd3d9; color: #20282f; box-shadow: 0 1px 2px #15202b08; }
.mcp-segmented input:disabled + span { opacity: .45; cursor: not-allowed; }
.mcp-segmented input:focus-visible + span, .mcp-filters input:focus-visible + span { outline: 2px solid #176b50; outline-offset: 2px; }
.mcp-method { background: #eceff2; padding: 3px !important; border-radius: 6px; }
.mcp-method label > span { min-height: 32px; padding: 4px 12px; }
.mcp-command { background: #fff; border: 1px solid #dce2e7; border-radius: 6px; margin-top: 16px; overflow: hidden; }
.mcp-command-heading { min-height: 34px; padding: 3px 10px 3px 16px; font-size: 11px; color: #68727d; border-bottom: 1px solid #edf0f3; }
.mcp-connections pre { padding: 16px; margin: 0; border: 0; background: transparent; white-space: pre-wrap; overflow-wrap: anywhere; word-break: break-word; font-size: 13px; line-height: 1.65; }
.mcp-connections code { color: #36444f; background: transparent; font-size: 12px; padding: 0; border-radius: 0; }
.mcp-command code { font-size: 13px; }
.mcp-setup-footer { margin-top: 10px; font-size: 12px; color: #68727d; }
.mcp-setup-footer code { padding: 2px 6px; background: #e9edf1; border-radius: 3px; margin-left: 6px; }
.mcp-endpoint { display: flex; align-items: center; gap: 10px; margin-top: 12px; font-size: 11px; color: #68727d; min-width: 0; }
.mcp-endpoint code { min-width: 0; overflow-wrap: anywhere; }
.mcp-copy-status { min-height: 18px; font-size: 12px; color: #176b50; margin: 0; }
.mcp-connections button { width: auto; margin: 0; font-size: 13px; line-height: 1.4; font-weight: 550; border-radius: 5px; min-height: 36px; padding: 8px 13px; box-shadow: none; }
.mcp-connections button.secondary { color: #35434e; background: #fff; border: 1px solid #cbd3d9; }
.mcp-connections .mcp-primary { display: inline-flex; align-items: center; justify-content: center; gap: 6px; background: #176b50; border-color: #176b50; color: #fff; }
.mcp-primary .mcp-icon { filter: invert(1); opacity: 1; }
.mcp-connections .mcp-icon-button { display: inline-grid; place-items: center; flex: 0 0 32px; width: 32px; height: 32px; min-height: 32px; padding: 6px; color: #52616e; background: transparent; border: 1px solid transparent; }
.mcp-connections .mcp-icon-button:hover { background: #e9edf1; border-color: #dce2e7; }
.mcp-connections .mcp-revoke-button:hover { background: #fcecea; border-color: #f3c4be; }
.mcp-connections .mcp-text-button { color: #176b50; border: 0; background: transparent; }
.mcp-connections button:focus-visible { outline: 2px solid #176b50; outline-offset: 3px; }
.mcp-connections button:disabled { opacity: .45; cursor: not-allowed; }
.mcp-connection-list { padding-top: 28px; }
.mcp-list-actions { display: flex; align-items: center; gap: 10px; }
.mcp-count { font-size: 12px; line-height: 24px; min-width: 24px; text-align: center; border-radius: 4px; background: #e9edf1; color: #596672; }
.mcp-list-tools { margin-bottom: 12px; }
.mcp-filters { display: flex; align-self: stretch; gap: 20px; }
.mcp-filters label > span { display: flex; align-items: center; gap: 6px; padding: 10px 0; font-size: 13px; color: #68727d; border-bottom: 2px solid transparent; cursor: pointer; }
.mcp-filters label > span > span { font-size: 11px; color: #7a8490; }
.mcp-filters input:checked + span { color: #165a44; border-bottom-color: #176b50; }
.mcp-search { display: flex; align-items: center; gap: 7px; width: 260px; min-width: 0; margin: 0; padding: 0 10px; border: 1px solid #d4dbe1; border-radius: 5px; background: #fff; }
.mcp-connections .mcp-search input { min-width: 0; width: 100%; height: 36px; min-height: 36px; margin: 0; padding: 5px 0; border: 0; border-radius: 0; font-size: 12px; background: transparent; box-shadow: none; }
.mcp-search:focus-within { outline: 2px solid #176b5030; border-color: #176b50; }
.mcp-table-wrap { border-top: 1px solid #dce2e7; }
.mcp-table { table-layout: fixed; width: 100%; margin: 0; background: transparent; font-size: 12px; }
.mcp-table th, .mcp-table td { padding: 16px 14px; border-bottom: 1px solid #e1e5e9; background: transparent; color: #35414b; vertical-align: top; overflow-wrap: anywhere; }
.mcp-table thead th { padding-top: 10px; padding-bottom: 10px; color: #68727d; font-size: 11px; font-weight: 500; background: #f0f3f5; }
.mcp-table thead th:first-child { width: 31%; }
.mcp-table thead th:nth-child(2) { width: 25%; }
.mcp-table thead th:last-child { width: 58px; }
.mcp-table th[scope="row"] { font-weight: 400; }
.mcp-connection-name { display: flex; align-items: flex-start; gap: 10px; min-width: 0; }
.mcp-connection-name > div { min-width: 0; }
.mcp-connection-name strong { display: block; color: #26313a; font-size: 13px; font-weight: 600; }
.mcp-connection-icon { display: grid; place-items: center; width: 32px; height: 32px; flex: 0 0 32px; background: #eaf0f4; border-radius: 6px; }
.mcp-row-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 5px; color: #78828d; font-size: 10px; }
.mcp-status { display: inline-flex; align-items: center; gap: 4px; }
.mcp-status::before { content: ""; width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.mcp-status--active { color: #246b53; }
.mcp-status--revoked { color: #7c8188; }
.mcp-status--expired { color: #986117; }
.mcp-cell-label { display: block; margin-bottom: 5px; font-size: 10px; }
.mcp-access-details { margin: 0; padding: 0; border: 0; }
.mcp-access-details summary { display: block; color: #35414b; font-size: 12px; padding-right: 18px; line-height: 1.5; }
.mcp-access-details summary::after { width: 12px; height: 12px; margin-top: 3px; }
.mcp-access-details > div { padding-top: 10px; font-size: 11px; }
.mcp-access-details ul { margin: 8px 0 0; padding-left: 14px; }
.mcp-access-details li { margin: 2px 0; }
.mcp-access-details code { font-size: 10px; overflow-wrap: anywhere; }
.mcp-empty { display: flex; align-items: center; justify-content: center; gap: 10px; min-height: 128px; color: #68727d; font-size: 13px; border-bottom: 1px solid #e1e5e9; }
.mcp-empty strong { font-weight: 500; }
.mcp-table-footer { margin: 10px 0 0; font-size: 11px; color: #78828d; }
.mcp-notice { margin: 16px 0; padding: 10px 12px; color: #855415; background: #faf0dc; border-left: 3px solid #c98e2d; font-size: 13px; }
.mcp-advanced { margin-top: 32px; border-top: 1px solid #dce2e7; }
.mcp-advanced > .spot-card { background: transparent; border: 0; border-bottom: 1px solid #dce2e7; border-radius: 0; box-shadow: none; padding: 18px 0; margin: 0; }
.mcp-advanced > details > summary { display: flex; align-items: center; gap: 12px; margin: 0; }
.mcp-advanced > details > summary::after { flex: 0 0 14px; width: 14px; height: 14px; }
.mcp-advanced .panel-disclosure__summary { flex: 1; display: flex; flex-direction: row; align-items: center; justify-content: space-between; gap: 12px; text-align: left; }
.mcp-advanced .panel-disclosure__summary .meta { display: none; }
.mcp-advanced .panel-disclosure__meta { font-size: 11px; color: #68727d; padding-right: 8px; }
.mcp-advanced .panel-disclosure__body { gap: 20px; margin: 20px 0 0; padding: 0; min-width: 0; }
.mcp-advanced form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 24px; max-width: 880px; min-width: 0; margin: 0; }
.mcp-advanced label { display: grid; align-content: start; gap: 8px; min-width: 0; margin: 0; font-size: 12px; color: #414e59; }
.mcp-advanced input:not([type="checkbox"]), .mcp-advanced select, .mcp-advanced textarea { width: 100%; min-width: 0; max-width: 100%; margin: 0; padding: 9px 12px; font-size: 13px; min-height: 40px; height: auto; color: #242a30; background-color: #fff; border-color: #cbd3d9; border-radius: 5px; box-shadow: none; }
.mcp-advanced small, .mcp-advanced .meta { margin: 0; font-size: 12px; line-height: 1.55; color: #68727d; overflow-wrap: anywhere; }
.mcp-advanced .mcp-field-group { display: grid; align-content: start; gap: 8px; min-width: 0; }
.mcp-advanced .mcp-credential-result { display: grid; gap: 12px; max-width: 880px; min-width: 0; }
.mcp-advanced .mcp-credential-result > .nav { justify-content: flex-start; flex-wrap: wrap; gap: 8px; margin: 0; }
.mcp-advanced button { white-space: normal; overflow-wrap: anywhere; }
.mcp-advanced label:has(input[type="checkbox"]) { display: flex; align-items: flex-start; gap: 8px; min-height: 24px; line-height: 1.5; }
.mcp-advanced input[type="checkbox"] { flex: 0 0 16px; width: 16px; height: 16px; margin: 2px 0 0; border-radius: 3px; }
.mcp-advanced form > .stack { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 20px; padding: 16px 0; border-top: 1px solid #e1e5e9; }
.mcp-advanced form > p { grid-column: 1 / -1; font-size: 12px; margin: 0; color: #68727d; }
.mcp-advanced form > button { grid-column: 1 / -1; justify-self: start; }
.mcp-revoke-dialog { width: min(440px, calc(100% - 32px)); min-width: 0; height: fit-content; min-height: 0; max-height: calc(100dvh - 32px); margin: auto; padding: 24px; overflow: auto; border: 1px solid #dce2e7; border-radius: 8px; background: #fff; color: #242a30; box-shadow: 0 16px 64px #15202b30; -webkit-backdrop-filter: none; backdrop-filter: none; }
.mcp-revoke-dialog[open] { display: block; }
.mcp-revoke-dialog::backdrop { background: #15202b66; }
.mcp-revoke-dialog h2 { margin: 0 0 12px; }
.mcp-revoke-dialog p { margin: 0 0 24px; font-size: 14px; overflow-wrap: anywhere; }
.mcp-dialog-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 10px; }
.mcp-connections .mcp-danger { color: #fff; background: #ae352e; border-color: #ae352e; }
.mcp-connections [hidden] { display: none !important; }
@media (max-width: 800px) {
  .mcp-table thead th:first-child { width: 29%; }
  .mcp-table th, .mcp-table td { padding: 12px 8px; }
  .mcp-connection-icon { display: none; }
}
@media (max-width: 600px) {
  .mcp-page-heading { align-items: flex-start; flex-direction: column; gap: 12px; margin-bottom: 24px; }
  .mcp-connections h1 { font-size: 26px; }
  .mcp-setup-controls { flex-direction: column; align-items: flex-start; gap: 12px; }
  .mcp-setup-controls > .mcp-segmented { width: 100%; }
  .mcp-segmented label { flex: 1; min-width: 0; }
  .mcp-segmented label > span { padding: 8px; font-size: 12px; gap: 5px; }
  .mcp-segmented .mcp-icon { display: none; }
  .mcp-setup-controls > .mcp-method { width: auto; }
  .mcp-method label { flex: 0 0 auto; }
  .mcp-method label > span { padding: 5px 14px; }
  .mcp-setup-footer { align-items: flex-start; flex-wrap: wrap; gap: 8px; }
  .mcp-list-tools { flex-direction: column-reverse; align-items: stretch; gap: 10px; }
  .mcp-search { width: 100%; }
  .mcp-filters { justify-content: space-between; gap: 12px; }
  .mcp-table, .mcp-table tbody { display: block; }
  .mcp-table thead { display: none; }
  .mcp-table tr { position: relative; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px 12px; padding: 18px 0; border-bottom: 1px solid #dce2e7; }
  .mcp-table th, .mcp-table td { display: block; min-width: 0; border: 0; padding: 0; }
  .mcp-table th[scope="row"] { grid-column: 1 / -1; padding-right: 42px; }
  .mcp-connection-icon { display: grid; }
  .mcp-table .mcp-row-action { position: absolute; top: 14px; right: 0; }
  .mcp-empty { flex-wrap: wrap; gap: 8px; }
  .mcp-advanced form, .mcp-advanced form > .stack { grid-template-columns: minmax(0, 1fr); }
}
