/* Iron Brick Developer Portal */
.ib-skip{position:absolute;left:-9999px;top:0;z-index:10000;background:#025add;color:#fff;padding:10px 16px}
.ib-skip:focus{left:10px;top:10px}
.ib-portal-hero .ib-code{margin-top:10px}
.ib-btn-ghost{background:transparent !important;border:2px solid #025add;color:#025add !important}
.hero .ib-btn-ghost{border-color:#fff;color:#fff !important}
:root.dark .ib-btn-ghost{border-color:#7fb0ff;color:#cfe0ff !important}
.ib-link{font-weight:600;color:var(--text-theme-color,#025add)}
.ib-req{font-size:.72rem;font-weight:600;color:#b5452f;text-transform:uppercase;letter-spacing:.04em;margin-left:4px}
.ib-small{font-size:.875rem;opacity:.85}

/* code */
.ib-code{position:relative;background:#0d1b2e;border-radius:10px;margin:0 0 16px;border:1px solid #1e3352}
.ib-code pre{margin:0;padding:34px 16px 16px;color:#d6e4ff;font:13px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre;overflow:auto;max-height:520px}
.ib-code-lang{position:absolute;top:8px;left:14px;font:600 11px/1 'Poppins',sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#7fa6e0}
.ib-copy{position:absolute;top:6px;right:8px;background:transparent;border:0;color:#9db7e4;padding:4px 8px;border-radius:6px}
.ib-copy:hover,.ib-copy:focus{background:#1e3352;color:#fff}
.ib-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px}

/* cards */
.ib-feature i{font-size:34px;color:var(--text-theme-color,#025add);display:block;margin-bottom:12px}
.ib-api-card{display:block;height:100%;padding:26px 28px;border-radius:12px;background:var(--light-color,#fff);border:1px solid var(--border-color,#e2e2e2);color:inherit;transition:box-shadow .2s,transform .2s}
a.ib-api-card:hover,a.ib-api-card:focus{box-shadow:0 10px 30px rgba(2,90,221,.14);transform:translateY(-2px);color:inherit}
.ib-api-card h3{font-size:1.25rem;font-weight:700;margin:10px 0}
.ib-api-card h3 a{color:inherit}
.ib-api-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}
.ib-api-tags span{font:600 11px/1 'Poppins',sans-serif;padding:5px 9px;border-radius:30px;background:#e8f0fd;color:#0b4bb3;letter-spacing:.03em}
.ib-api-tags .ib-badge-live{background:#dff5e6;color:#11743a}
.ib-api-tags .ib-badge-sandbox{background:#fdf0e3;color:#9a4a12}
.ib-api-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin-top:14px}
.ib-catalog-bar{display:flex;gap:16px;align-items:center;margin-bottom:24px}
.ib-catalog-bar input{max-width:460px}
.ib-steps .ib-step{height:100%;padding:28px;border-radius:12px;background:var(--light-color,#fff);border:1px solid var(--border-color,#e2e2e2)}
.ib-step span{display:inline-flex;width:38px;height:38px;border-radius:50%;align-items:center;justify-content:center;background:#025add;color:#fff;font-weight:700;margin-bottom:12px}
.ib-step a{font-weight:600}
.ib-stepno{display:inline-flex;width:26px;height:26px;border-radius:50%;align-items:center;justify-content:center;background:#025add;color:#fff;font-size:14px;margin-right:6px}

/* reference layout */
.ib-ref{padding-top:40px}
.ib-side-in{position:sticky;top:100px;max-height:calc(100vh - 120px);overflow:auto;padding-right:10px;border-right:1px solid var(--border-color,#e2e2e2)}
.ib-side h6{font:700 12px/1 'Poppins',sans-serif;text-transform:uppercase;letter-spacing:.08em;margin:20px 0 8px;opacity:.7}
.ib-side ul{list-style:none;padding:0;margin:0}
.ib-side li a{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;color:inherit;font-size:.92rem}
.ib-side li a:hover,.ib-side li a.active{background:#e8f0fd;color:#0b4bb3}
.ib-back{display:inline-block;font-weight:600;margin-bottom:6px}
.ib-ref-main{padding-left:28px;min-width:0}
.ib-ref-main section{scroll-margin-top:100px}
.ib-op{padding:30px 0;border-top:1px solid var(--border-color,#e2e2e2)}
.ib-op h3{font-size:1.15rem;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ib-op h5,.ib-ref-main h5{font-size:.95rem;font-weight:700;margin:18px 0 8px}
.ib-path{font-size:1rem;color:inherit;background:none;word-break:break-all}
.ib-m{display:inline-block;min-width:52px;text-align:center;font:700 11px/1 ui-monospace,Menlo,monospace;padding:5px 6px;border-radius:5px;color:#fff;flex:none}
.ib-m-get{background:#1b7f4c}.ib-m-post{background:#025add}.ib-m-put,.ib-m-patch{background:#a35a00}.ib-m-delete{background:#b3261e}.ib-m-tool{background:#6a3fb5}
.ib-table{font-size:.9rem}
.ib-table code{white-space:nowrap}
.ib-status{font:700 12px/1 ui-monospace,Menlo,monospace;padding:4px 6px;border-radius:4px;background:#eee;color:#333}
.ib-status-2{background:#dff5e6;color:#11743a}.ib-status-4{background:#fdf0e3;color:#9a4a12}.ib-status-5{background:#fde2e1;color:#9b1c14}
.ib-servers{padding-left:1.1rem}
.ib-dl .btn-get-started{margin-right:8px}
.ib-schema{margin-bottom:24px}
.ib-try{margin-top:4px;padding:8px 18px !important;font-size:14px !important}
.ib-try-out{margin-top:12px}
.ib-prose h2{font-weight:700;margin-bottom:16px}
.ib-prose h3{font-size:1.2rem;font-weight:700;margin-top:28px}
.ib-doc-cards .ib-card{color:inherit}
.ib-doc-cards .ib-card:hover{border-color:#025add}

/* forms & account */
.ib-form-card{padding:34px}
.ib-alert{padding:12px 16px;border-radius:8px;margin-bottom:16px;background:#e8f0fd;color:#0b3c8c;border:1px solid #c5d9fa}
.ib-alert.ib-err{background:#fde8e7;color:#8d1c14;border-color:#f6c3bf}
.ib-alert.ib-ok{background:#e2f6e9;color:#11643a;border-color:#b9e6c9}
.invalid-feedback{display:block;min-height:0}
.ib-acct-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.ib-scope-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:8px}
.ib-scope-grid label{display:flex;gap:8px;align-items:flex-start;padding:8px 10px;border:1px solid var(--border-color,#e2e2e2);border-radius:8px;font-size:.9rem;cursor:pointer}
.ib-scope-grid small{display:block;opacity:.75}
.ib-app{padding:22px 24px;border:1px solid var(--border-color,#e2e2e2);border-radius:12px;margin-bottom:14px;background:var(--light-color,#fff)}
.ib-app-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.ib-app dl{display:grid;grid-template-columns:140px 1fr;gap:6px 14px;margin:12px 0 0;font-size:.9rem}
.ib-app dt{font-weight:600;opacity:.8}
.ib-app dd{margin:0;word-break:break-all}
.ib-app .ib-scopes code{margin-right:6px}
.ib-secret{padding:20px 24px;border-radius:12px;background:#fff8e6;border:1px solid #f2d48a;color:#4a3a00;margin-bottom:20px}
.ib-secret dl{display:grid;grid-template-columns:120px 1fr;gap:6px 12px}
.ib-secret dd{margin:0;word-break:break-all}
.ib-secret code{color:#4a3a00;font-size:14px}
.ib-copy-inline{border:1px solid #c9a646;background:#fff;border-radius:6px;font-size:12px;padding:2px 8px;margin-left:6px}
.ib-danger{border-color:#f0c2be}
.ib-meter{height:12px;border-radius:8px;background:#e6ebf2;overflow:hidden}
.ib-meter span{display:block;height:100%;width:0;background:#025add;transition:width .4s}
.ib-chart{display:flex;align-items:flex-end;gap:3px;height:150px;padding-top:10px;border-bottom:1px solid var(--border-color,#e2e2e2)}
.ib-chart div{flex:1;background:#5a96f0;border-radius:3px 3px 0 0;min-height:2px}
.ib-chart div:hover{background:#025add}
.ib-plan{height:100%;padding:24px;border-radius:12px;border:2px solid var(--border-color,#e2e2e2);background:var(--light-color,#fff)}
.ib-plan.ib-current{border-color:#025add}
.ib-plan h5{font-weight:700}
.ib-plan .ib-price{font-size:1.4rem;font-weight:700;color:#025add}
.ib-checks{list-style:none;padding:0;margin:0}
.ib-checks li{display:flex;gap:10px;padding:10px 0;border-bottom:1px solid var(--border-color,#e2e2e2)}
.ib-checks i{font-size:20px;flex:none}
.ib-checks .ib-pass i{color:#1b7f4c}.ib-checks .ib-fail i{color:#b3261e}
.ib-verdict{padding:16px 20px;border-radius:10px;font-weight:700;margin-bottom:12px}
.ib-verdict.ok{background:#e2f6e9;color:#11643a}.ib-verdict.bad{background:#fde8e7;color:#8d1c14}

/* dark mode */
:root.dark .ib-api-card,:root.dark .ib-step,:root.dark .ib-app,:root.dark .ib-plan{background:#1b1b1b;border-color:#333;color:#eee}
:root.dark .ib-api-tags span{background:#14294a;color:#a9c8ff}
:root.dark .ib-side li a:hover,:root.dark .ib-side li a.active{background:#14294a;color:#cfe0ff}
:root.dark .ib-table{color:#ddd;--bs-table-color:#ddd;--bs-table-bg:transparent}
:root.dark .ib-alert{background:#14294a;color:#cfe0ff;border-color:#24477a}
:root.dark .ib-secret{background:#2e2610;color:#f3e2a8;border-color:#6b5617}
:root.dark .ib-secret code{color:#f3e2a8}
:root.dark .form-control,:root.dark .form-select{background:#111;color:#eee;border-color:#444}
:root.dark .ib-meter{background:#333}

@media (max-width:991px){
  .ib-side-in{position:static;max-height:none;border-right:0;border-bottom:1px solid var(--border-color,#e2e2e2);padding-bottom:12px;margin-bottom:20px}
  .ib-ref-main{padding-left:12px}
}
@media (max-width:575px){
  .ib-app dl,.ib-secret dl{grid-template-columns:1fr}
  .ib-form-card{padding:22px}
  .ib-catalog-bar{flex-direction:column;align-items:stretch}
}

/* catalog tabs, kinds */
.ib-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}
.ib-tab{border:1px solid var(--border-color,#e2e2e2);background:var(--light-color,#fff);border-radius:30px;padding:8px 16px;font-weight:600;font-size:.95rem;color:inherit}
.ib-tab span{display:inline-block;min-width:22px;padding:1px 6px;border-radius:12px;background:#e8f0fd;color:#0b4bb3;font-size:.78rem;margin-left:4px}
.ib-tab.active{background:#025add;border-color:#025add;color:#fff}
.ib-tab.active span{background:#fff}
.ib-api-tags .ib-kind{color:#fff}
.ib-api-tags .ib-kind-apis{background:#025add}.ib-api-tags .ib-kind-events{background:#0f7b6c}.ib-api-tags .ib-kind-agents{background:#6a3fb5}
.ib-m-event{background:#0f7b6c}.ib-m-agent{background:#6a3fb5}
.ib-kind-i{font-size:34px;color:var(--text-theme-color,#025add)}
.ib-pain .ib-card{padding:20px 22px}
.ib-pain i{font-size:26px;color:#b5452f}
.ib-pain h4{font-size:1.05rem;margin:8px 0 6px;color:inherit}
.ib-pain p{margin:0;font-size:.92rem}
.ib-outcomes b{display:block;font-size:1.1rem;color:var(--text-theme-color,#025add)}
.ib-outcomes span{font-size:.92rem;opacity:.85}
.ib-gov th{width:18%;font-weight:600;opacity:.85}

/* workspace */
.ib-pill{display:inline-block;padding:4px 10px;border-radius:20px;font-size:.78rem;font-weight:700;text-transform:capitalize;background:#e6ebf2;color:#334}
.ib-pill-active,.ib-pill-approved{background:#dff5e6;color:#11743a}
.ib-pill-submitted{background:#e8f0fd;color:#0b4bb3}
.ib-pill-rejected{background:#fde8e7;color:#8d1c14}
.ib-pill-closed{background:#eee;color:#555}
.ib-h{display:inline-block;padding:3px 10px;border-radius:20px;font-size:.78rem;font-weight:700;color:#fff}
.ib-h-green{background:#1b7f4c}.ib-h-amber{background:#b06d00}.ib-h-red{background:#b3261e}
.ib-health{display:flex;gap:14px;padding-top:6px}
.ib-health label{display:flex;align-items:center;gap:6px;cursor:pointer}
.ib-update{border-left-width:6px}
.ib-update-green{border-left-color:#1b7f4c}.ib-update-amber{border-left-color:#b06d00}.ib-update-red{border-left-color:#b3261e}
.ib-update h6{font-weight:700;font-size:.9rem;margin-top:8px}
.ib-pre{white-space:pre-line;font-size:.92rem}
.ib-ts{min-width:980px}
.ib-ts td,.ib-ts th{vertical-align:middle;padding:6px 4px}
.ib-ts .ib-hr{width:66px;text-align:right}
.ib-ts .ib-c{min-width:150px}.ib-ts .ib-l{min-width:160px}.ib-ts .ib-task{min-width:150px}
.ib-ts .ib-rt{font-weight:700;text-align:right}
.ib-btn-solid2{background:#11743a !important}
.ib-mform{border-top:1px dashed var(--border-color,#e2e2e2);padding-top:10px;margin-top:6px}
:root.dark .ib-tab{background:#1b1b1b;border-color:#333}
:root.dark .ib-pill{background:#333;color:#ddd}

/* stacked cards must not be forced to full column height */
form.ib-card,.ib-card.mt-4,.ib-card + .ib-card,#v-result .ib-card{height:auto}

/* case studies */
.ib-flow{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:10px 0 20px}
.ib-flow-step{padding:10px 14px;border-radius:8px;background:#025add;color:#fff;font-weight:600;font-size:.9rem;text-align:center}
.ib-flow-step:first-child{background:#0b1f3a}.ib-flow-step:last-child{background:#0f7b6c}
.ib-flow-arrow{color:#025add;font-size:1.2rem}
.ib-sol{position:relative}
.ib-sol-n{position:absolute;top:18px;right:20px;font:700 28px/1 'Montserrat',sans-serif;color:#e1e8f3}
.ib-result{height:100%;padding:24px;border-radius:12px;border:1px solid var(--border-color,#e2e2e2)}
.ib-result i{font-size:30px;color:#1b7f4c}
.ib-result h4{font-size:1.05rem;font-weight:700;margin:10px 0 6px}
@media (max-width:767px){.ib-flow{flex-direction:column}.ib-flow-arrow{transform:rotate(90deg)}}
:root.dark .ib-sol-n{color:#333}
.ib-login-tabs{justify-content:center}
.ib-login-tabs .ib-tab{flex:1;min-width:90px}
