.signin-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:1rem;background:#05172799}.signin-dialog{width:min(24rem,100%);padding:1.5rem;border-top:3px solid var(--ping-red);border-radius:8px;background:var(--th-bg-card);color:var(--th-text)}.signin-dialog h2{margin:0 0 1rem;font-size:1.15rem}.signin-dialog label{display:block;margin:.75rem 0 .25rem;font-size:var(--font-size-xs);font-weight:600}.signin-dialog input{width:100%;box-sizing:border-box;padding:.5rem .65rem;border:1px solid var(--th-border);border-radius:6px;background:var(--th-bg);color:var(--th-text);font:inherit}.signin-dialog input:focus-visible,.signin-dialog button:focus-visible{outline:2px solid var(--ping-red);outline-offset:2px}.signin-error{margin:.75rem 0 0;color:var(--ping-red-deep);font-size:var(--font-size-xs);font-weight:600}:root[data-theme=dark] .signin-error{color:#ff8a8a}.signin-actions{display:flex;justify-content:flex-end;gap:.5rem;margin-top:1.25rem}.signin-actions button{padding:.45rem 1rem;border-radius:6px;font:inherit;font-size:var(--font-size-xs);font-weight:600;cursor:pointer}.signin-cancel{border:1px solid var(--th-border);background:transparent;color:var(--th-text)}.signin-submit{border:0;background:var(--ping-grad);color:var(--brand-on, #fff)}:root{--present-scale: 1.25;--present-heading-scale: 1.3}:root[data-present="1"]{font-size:calc(100% * var(--present-scale))}:root[data-present="1"] [data-admin-only]{display:none!important}:root[data-present="1"] .ijp-step__head h2{font-size:calc(1.1rem * var(--present-heading-scale))}:root[data-present="1"] .story__title{font-size:calc(1.1rem * var(--present-heading-scale))}:root[data-present="1"] .story{font-size:1.1em}:root[data-present="1"] .ijp-step[data-step-active]{border-color:var(--ping-red);box-shadow:0 0 0 3px var(--ping-red)}:root{--present-bar-h: 5rem}:root[data-present="1"] [id^=ijp-step-]{scroll-margin-top:var(--present-bar-h)}.present-bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;padding:.5rem 1.25rem;background:var(--ping-core-dark);color:#fff;border-bottom:1px solid var(--th-border)}.present-bar__count{font-weight:700;font-variant-numeric:tabular-nums}.present-bar__end{margin-left:auto}.present-bar .shell-theme:disabled{opacity:.45;cursor:default}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}:root{--ping-red: #d20e0f;--ping-red-deep: #aa0005;--ping-core-dark: #051727;--ping-grad: linear-gradient(90deg, var(--ping-red) 55%, var(--ping-red-deep));--th-bg: #ffffff;--th-bg-page: #f4f5f7;--th-bg-card: #ffffff;--th-text: #051727;--th-text-muted: #4a5868;--th-border: #d9dde3;--font-size-3xs: .68rem;--font-size-2xs: .75rem;--font-size-xs: .85rem;color-scheme:light}:root[data-theme=dark]{--th-bg: #0b2033;--th-bg-page: #051727;--th-bg-card: #0e263b;--th-text: #e8edf2;--th-text-muted: #9fb0c2;--th-border: #22405c;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{font-family:Montserrat,Helvetica Neue,Helvetica,Arial,sans-serif;background:var(--th-bg-page);color:var(--th-text);line-height:1.5}button,input,select,textarea{font-family:inherit}.shell-bar{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;padding:.65rem 1.25rem;background:var(--brand-header, var(--ping-core-dark));color:var(--brand-header-on, #fff);border-bottom:3px solid transparent;border-image:var(--ping-grad) 1}.shell-brand{display:inline-flex;align-items:center;gap:.6rem;color:inherit;text-decoration:none;font-weight:700;letter-spacing:.02em}.shell-brand img{width:1.9rem;height:1.9rem;object-fit:contain}.shell-nav{display:flex;gap:.25rem;flex:1}.shell-nav a{padding:.3rem .75rem;border-radius:999px;color:var(--brand-header-soft, rgba(255, 255, 255, .78));text-decoration:none;font-size:var(--font-size-xs);font-weight:500}.shell-nav a:hover{color:var(--brand-header-on, #fff);background:#ffffff14}.shell-nav a[aria-current=page]{color:var(--brand-on, #fff);background:var(--ping-grad);font-weight:600}.shell-theme{padding:.3rem .8rem;border:1px solid rgba(255,255,255,.3);border-radius:6px;background:transparent;color:var(--brand-header-on, #fff);font-size:var(--font-size-2xs);font-weight:600;cursor:pointer}.shell-theme:hover{border-color:var(--brand-header-on, #fff)}.shell-user{display:inline-flex;align-items:center;gap:.5rem;margin:0;font-size:var(--font-size-xs)}.shell-user>span:first-child{max-width:16rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shell-badge{padding:.1rem .5rem;border-radius:999px;background:var(--ping-grad);color:var(--brand-on, #fff);font-size:var(--font-size-3xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.shell a:focus-visible,.shell button:focus-visible{outline:2px solid var(--ping-red);outline-offset:2px}@media(max-width:560px){.shell-bar{gap:.75rem;padding:.6rem 1rem}.shell-nav{order:3;flex-basis:100%}}.shell-hosted{margin:0;padding:.5rem 1rem;text-align:center;font-size:.9rem;background:var(--card, #fff);color:var(--fg, #1c1d1f);border-bottom:1px solid var(--line, #dcdde0);border-left:4px solid var(--brand, #b6132b)}.story{margin:0 0 1rem;padding:.9rem 1.1rem;border:1px solid var(--th-border);border-left:5px solid var(--ijp-red);border-radius:10px;background:var(--th-bg-card)}.story__head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.story__eyebrow{margin:0;font-size:var(--font-size-2xs);font-weight:600;letter-spacing:.06em;color:var(--ijp-red-text)}.story__title{margin:.15rem 0 0;font-size:1.1rem}.story__controls{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;margin:.6rem 0}.story__field{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-xs);color:var(--th-text-muted)}.story__field select{font:inherit;padding:.3rem .5rem;border:1px solid var(--th-border);border-radius:6px;background:var(--th-bg);color:var(--th-text)}.story__summary{display:grid;grid-template-columns:auto 1fr;gap:.2rem .75rem;margin:.5rem 0;font-size:var(--font-size-xs)}.story__summary dt{font-weight:600;color:var(--th-text-muted)}.story__summary dd{margin:0}.story__steps{list-style:none;margin:.5rem 0;padding:0;display:grid;gap:.25rem}.story__step{display:flex;align-items:center;gap:.5rem;width:100%;text-align:left;font:inherit;padding:.4rem .6rem;border:1px solid var(--th-border);border-radius:6px;background:var(--th-bg);color:var(--th-text);cursor:pointer}.story__step:focus-visible{outline:2px solid var(--ijp-red);outline-offset:2px}.is-current>.story__step{border-color:var(--ijp-red);font-weight:600}.story__n{display:inline-grid;place-items:center;min-width:1.4rem;height:1.4rem;border-radius:999px;background:var(--ijp-grad);color:var(--brand-on, #fff);font-size:var(--font-size-2xs)}.story__tag{margin-left:auto;padding:.05rem .5rem;border-radius:999px;border:1px solid var(--ijp-warn);color:var(--ijp-warn);font-size:var(--font-size-2xs);font-weight:600}.story__body{margin:.4rem 0 .4rem 2rem;font-size:var(--font-size-xs)}.story__body p{margin:.3rem 0}.story__say{padding:.4rem .7rem;border-left:4px solid var(--ijp-red);background:#d20e0f0f;border-radius:0 6px 6px 0}.story__why{color:var(--th-text-muted)}.story__proof{margin:.5rem 0 0;font-size:var(--font-size-xs)}.story__takeaway{margin:.4rem 0 0;font-weight:600}.ijp{--ijp-red: var(--ping-red);--ijp-red-text: var(--brand-text-light, #d20e0f);--ijp-grad: var(--ping-grad);--ijp-strong: #051727;--ijp-ok: #15803d;--ijp-info: #1d4ed8;--ijp-warn: #9a5b00;max-width:1180px;margin:0 auto;padding:1rem 1.25rem 3rem;color:var(--th-text)}:root[data-theme=dark] .ijp{--ijp-red-text: var(--brand-text-dark, #ff5a5b);--ijp-strong: var(--th-text);--ijp-ok: #4ade80;--ijp-info: #86a8ff;--ijp-warn: #f0b34c}.ijp h1,.ijp h2,.ijp h3{color:var(--ijp-strong)}.ijp-hero{display:flex;gap:1rem;align-items:flex-start}.ijp-hero h1{margin:.2rem 0 .4rem}.ijp-eyebrow{margin:0;font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ijp-red-text)}.ijp-lede{max-width:820px;color:var(--th-text-muted)}.ijp-toolbar{display:flex;flex-wrap:wrap;gap:.75rem 1.5rem;align-items:center;margin:.5rem 0}.ijp-toolbar__group{display:flex;align-items:center;gap:.5rem;font-size:var(--font-size-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--th-text-muted)}.ijp-seg{display:inline-flex;flex-wrap:wrap;border:1px solid var(--th-border);border-radius:8px;overflow:hidden;background:var(--th-bg)}.ijp-seg button{font:inherit;font-size:var(--font-size-xs);text-transform:none;letter-spacing:0;padding:.35rem .8rem;border:0;border-right:1px solid var(--th-border);background:transparent;color:var(--th-text);cursor:pointer}.ijp-seg button:last-child{border-right:0}.ijp-seg button[aria-pressed=true]{background:var(--ijp-grad);color:var(--brand-on, #fff);font-weight:600}.ijp-seg button:disabled{opacity:.45;cursor:not-allowed}.ijp-seg button:focus-visible{outline:2px solid var(--ijp-red);outline-offset:-2px}.ijp-mock-badge{display:inline-block;margin:.25rem 0;padding:.3rem .75rem;border-radius:999px;background:var(--ijp-grad);color:var(--brand-on, #fff);font-size:var(--font-size-xs);font-weight:600}.ijp--mock .ijp-step{border-style:dashed}.ijp-actors{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.75rem;margin:1rem 0}.ijp-actor{padding:.75rem .9rem;border:1px solid var(--th-border);border-left:5px solid var(--th-text-muted);border-radius:8px;background:var(--th-bg-card)}.ijp-actor--idp{border-left-color:var(--ijp-red)}.ijp-actor--as{border-left-color:#7c3aed}.ijp-actor h3{margin:0;font-size:.95rem}.ijp-actor p{margin:.15rem 0 .4rem;font-size:var(--font-size-2xs);color:var(--th-text-muted)}.ijp-actor dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.15rem .5rem;font-size:var(--font-size-2xs)}.ijp-actor dt{color:var(--th-text-muted)}.ijp-actor dd{margin:0;word-break:break-all}.ijp-banner{margin:.75rem 0;padding:.6rem .9rem;border-radius:8px;border:1px solid #b45309;background:#b453091a}.ijp-banner--error{border-color:var(--ijp-red);background:#d20e0f14}.ijp-step{margin:1rem 0;padding:1rem 1.1rem;border:1px solid var(--th-border);border-radius:10px;background:var(--th-bg-card)}.ijp-step__head{display:flex;align-items:center;gap:.6rem}.ijp-step__head h2{margin:0;font-size:1.1rem}.ijp-step__n{display:inline-flex;width:1.7rem;height:1.7rem;align-items:center;justify-content:center;border-radius:50%;background:var(--ijp-grad);color:var(--brand-on, #fff);font-weight:700}.ijp-note{color:var(--th-text-muted);font-size:var(--font-size-xs);max-width:900px}.ijp-status{font-weight:600}.ijp-status--ok{color:var(--ijp-ok)}.ijp-step__n.is-done{background:var(--ijp-ok)}:root[data-theme=dark] .ijp-step__n.is-done{color:#052e16}.ijp-btn{font:inherit;padding:.4rem .9rem;margin:.25rem .4rem .25rem 0;border:1px solid var(--th-border);border-radius:6px;background:var(--th-bg);color:var(--th-text);cursor:pointer}.ijp-btn--primary{background:var(--ijp-grad);border-color:var(--ijp-red);color:var(--brand-on, #fff);font-weight:600}.ijp-btn:disabled{opacity:.45;cursor:default}.ijp-io{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.75rem;margin-top:.75rem}.ijp-io h4,.ijp-checks h4{margin:0 0 .3rem;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--th-text-muted)}.ijp-json,.ijp-form,.ijp-code{margin:0;padding:.6rem;max-height:320px;overflow:auto;border:1px solid var(--th-border);border-radius:6px;background:var(--th-bg);font-family:inherit;font-size:var(--font-size-2xs)}.ijp-json{white-space:pre-wrap;word-break:break-word}.ijp-kv{margin:0;display:grid;grid-template-columns:minmax(6rem,max-content) 1fr;gap:.2rem .75rem}.ijp-kv dt{color:var(--th-text-muted);font-weight:600}.ijp-kv dd{margin:0;overflow-wrap:anywhere;color:var(--ijp-strong)}.ijp-kv .ijp-kv{padding-left:.6rem;border-left:2px solid var(--th-border)}.ijp-kv-list{margin:0;padding-left:1.1rem}.ijp-checks{margin-top:.9rem;overflow-x:auto}.ijp-checks table,.ijp-vendors{width:100%;border-collapse:collapse;font-size:var(--font-size-2xs)}.ijp-checks th,.ijp-checks td,.ijp-vendors th,.ijp-vendors td{text-align:left;padding:.35rem .5rem;border-bottom:1px solid var(--th-border);vertical-align:top;word-break:break-word}.ijp-checks th,.ijp-vendors th{color:var(--ijp-strong)}.ijp-checks tr.is-fail td{background:#d20e0f14}.ijp-checks tr.is-warn td{background:#b4530914}.ijp-cite{color:var(--th-text-muted);font-size:var(--font-size-3xs)}.ijp-field{display:flex;flex-direction:column;gap:.25rem;margin:.5rem 0;font-size:var(--font-size-xs);max-width:520px}.ijp-field input,.ijp-field select,.ijp-field textarea{font:inherit;padding:.35rem .5rem;border:1px solid var(--th-border);border-radius:6px;background:var(--th-bg);color:var(--th-text)}.ijp-args{margin:.5rem 0;padding:.5rem .75rem;border:1px solid var(--th-border);border-radius:8px;max-width:520px}.ijp-args legend{font-size:var(--font-size-xs);font-weight:600;padding:0 .3rem}.ijp-check{display:flex;align-items:center;gap:.4rem;margin:.5rem 0;font-size:var(--font-size-xs)}.ijp-req{color:var(--ijp-red-text);font-size:var(--font-size-2xs)}.ijp-negatives{list-style:none;margin:.5rem 0 0;padding:0}.ijp-negatives li{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;padding:.6rem .75rem;border:1px solid var(--th-border);border-radius:8px;margin-bottom:.5rem}.ijp-negatives li.is-pass{border-left:5px solid #15803d}.ijp-negatives li.is-fail{border-left:5px solid var(--ijp-red)}.ijp-negatives p{margin:.2rem 0 0}.ijp-result{font-weight:600;font-size:var(--font-size-xs)}.ijp a{color:inherit}.ijp-field--wide{max-width:900px}.ijp-field--wide textarea{word-break:break-all}.ijp-targets{margin:.5rem 0;padding:.3rem .6rem;border:1px solid var(--th-border);border-radius:6px}.ijp-targets legend{font-size:var(--font-size-xs);padding:0 .3rem}.ijp-targets .ijp-check{display:inline-flex;margin-right:1rem}.ijp-diagram-link{font-size:var(--font-size-2xs);font-weight:500;text-transform:none;letter-spacing:normal}.ijp-step__head .ijp-diagram-link{margin-left:auto}.ijp-preflight{margin:.6rem 0;padding:.6rem .85rem;max-width:900px;border:1px solid #b45309;border-left-width:5px;border-radius:8px;background:#b453090f}.ijp-preflight.is-fail{border-color:var(--ijp-red);background:#d20e0f0f}.ijp-preflight h4{margin:0 0 .4rem;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--ijp-strong)}.ijp-preflight ul{list-style:none;margin:0 0 .3rem;padding:0;display:grid;gap:.45rem}.ijp-preflight li{display:flex;gap:.6rem;align-items:flex-start;font-size:var(--font-size-xs)}.ijp-preflight__tag{flex:none;min-width:2.7rem;padding:.05rem .4rem;border-radius:999px;text-align:center;font-size:var(--font-size-3xs);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fff;background:#b45309}.ijp-preflight li.is-fail .ijp-preflight__tag{background:var(--ijp-red)}.ijp-fix{margin:.25rem 0 0;font-weight:600;color:var(--ijp-strong)}.ijp-life{display:block;width:fit-content;margin:.35rem 0;padding:.15rem .65rem;border:1px solid var(--th-border);border-radius:999px;font-size:var(--font-size-2xs);font-variant-numeric:tabular-nums}.ijp-life.is-used{border-color:var(--ijp-info);color:var(--ijp-info)}.ijp-life.is-expired{border-color:var(--ijp-warn);color:var(--ijp-warn)}.ijp-results{margin-top:.9rem;padding:.75rem .9rem;border:1px solid var(--th-border);border-top:3px solid var(--ijp-red);border-radius:8px;background:var(--th-bg)}.ijp-results h3{margin:0;font-size:.95rem}.ijp-page{margin-top:.75rem;overflow:hidden;border:1px solid var(--th-border);border-radius:10px;background:var(--th-bg);box-shadow:0 6px 18px #05172714}.ijp-page>.ijp-cite,.ijp-page>.ijp-banner{margin:.5rem .9rem}.ijp-page__bar{display:flex;align-items:center;gap:.6rem;padding:.55rem .9rem;background:var(--ijp-grad);color:var(--brand-on, #fff)}.ijp-page__method{padding:.05rem .45rem;border-radius:4px;background:#ffffff2e;font-size:var(--font-size-2xs);font-weight:700}.ijp-page__url{flex:1;min-width:0;overflow-wrap:anywhere;font-size:var(--font-size-xs)}.ijp-pill{flex:none;padding:.1rem .6rem;border-radius:999px;background:#fff;font-size:var(--font-size-2xs);font-weight:700}.ijp-pill.is-ok{color:#15803d}.ijp-pill.is-bad{color:var(--ijp-red)}.ijp-page__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.75rem;padding:.4rem .9rem .9rem}.ijp-page__card{padding:.65rem .8rem;border:1px solid var(--th-border);border-radius:8px;background:var(--th-bg-card);font-size:var(--font-size-xs)}.ijp-page__card h4{margin:0 0 .45rem;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--th-text-muted)}.ijp-verify{list-style:none;margin:0;padding:0;display:grid;gap:.35rem}.ijp-verify li{display:flex;gap:.45rem;align-items:flex-start;margin:0;padding:0}.ijp-verify__mark{display:inline-flex;width:1.1rem;height:1.1rem;flex:none;align-items:center;justify-content:center;border-radius:50%;background:#15803d;color:#fff;font-size:.7rem;font-weight:700}.ijp-verify li.is-fail .ijp-verify__mark{background:var(--ijp-red)}.ijp-verify li.is-fail strong{color:var(--ijp-red-text)}.ijp-profile{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}.ijp-profile__avatar{display:inline-flex;flex:none;width:2.4rem;height:2.4rem;align-items:center;justify-content:center;border-radius:50%;background:var(--ijp-grad);color:var(--brand-on, #fff);font-weight:700}.ijp-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ijp-backends{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.75rem 0;padding:.5rem .75rem;border:1px solid var(--th-border, #d6dbe1);border-radius:8px}.ijp-backends__label{font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;opacity:.75}.ijp-backends .ijp-btn{margin-left:auto}.ijp-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .6rem;border:1px solid var(--th-border, #d6dbe1);border-radius:999px;font-size:.85rem;font-weight:600}.ijp-backends__list{display:contents}.ijp-chip__state{font-weight:400;opacity:.8}.ijp-chip__led{width:.55rem;height:.55rem;border-radius:50%;background:#9aa5b1}.ijp-chip.is-up .ijp-chip__led{background:#1d7a4b}.ijp-chip.is-slow .ijp-chip__led{background:#b7791f}.ijp-chip.is-down .ijp-chip__led{background:#c81e1e}.ijp-story{margin:0 0 1rem;padding:.6rem .9rem;border-left:4px solid var(--th-accent, #b3282d);border-radius:0 6px 6px 0;background:var(--th-bg-page, rgba(179, 40, 45, .06))}.ijp-tabs{margin:.75rem 0;border:1px solid var(--th-border, #d6dbe1);border-radius:8px;overflow:hidden}.ijp-tabs__list{display:flex;flex-wrap:wrap;gap:.25rem;padding:0 .5rem;border-bottom:1px solid var(--th-border, #d6dbe1)}.ijp-tabs__list button{padding:.5rem .75rem;border:0;border-bottom:2px solid transparent;background:none;color:inherit;font:inherit;font-weight:600;cursor:pointer;opacity:.75}.ijp-tabs__list button[aria-selected=true]{border-bottom-color:var(--th-accent, #b3282d);opacity:1}.ijp-tabs__list button:focus-visible{outline:2px solid var(--th-accent, #b3282d);outline-offset:-2px}.ijp-tabs__panel{padding:.75rem;min-width:0;overflow-x:auto}.ijp-code{white-space:pre;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.ijp-clients{margin:.75rem 0;padding:.5rem .75rem;border:1px dashed var(--th-border, #d6dbe1);border-radius:8px}.ijp-clients summary{cursor:pointer;font-weight:600}.ijp-clients h4{margin:.75rem 0 .25rem}.ijp-terms{margin:.25rem 0 .5rem;font-size:.85rem;opacity:.85}.ijp-as-record{margin-top:.75rem;padding:.75rem 1rem;border:1px solid var(--ijp-ok, #15803d);border-radius:8px}.ijp-as-record h4{margin:0 0 .4rem}.ijp-as-record .ijp-pill{display:inline-block;margin:0 0 .4rem}.ijp-as-record dd{overflow-wrap:anywhere}.ijp-interop{margin:.75rem 0;padding:.5rem .75rem;border:1px solid var(--th-border, #d6dbe1);border-radius:8px}.ijp-interop summary{cursor:pointer;font-weight:700}.ijp-interop table{width:100%;border-collapse:collapse;margin-top:.5rem}.ijp-interop th,.ijp-interop td{padding:.4rem .5rem;text-align:left;vertical-align:top;border-top:1px solid var(--th-border, #d6dbe1)}.ijp-interop .ijp-note{display:block;font-weight:400}.ijp-interop .ijp-pill{display:inline-block;margin-bottom:.25rem}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}.ijx{--c-user:#64748b;--c-bff:#2563eb;--c-pf:#d20e0f;--c-as:#7c3aed;--c-rs:#b45309;--red:#d20e0f;height:calc(100vh - 3.6rem);min-height:32rem;color:var(--th-text);background:var(--th-bg);display:flex;flex-direction:column}.ijx *{box-sizing:border-box}.ijx-app{display:grid;flex:1;min-width:0;min-height:0}.ijx aside{background:var(--th-bg-card);border-right:1px solid var(--th-border);padding:16px 16px 10px;overflow:auto}.ijx h1{font-size:1.15rem;margin:0 0 4px}.ijx .lede{color:var(--th-text-muted);margin:0 0 12px;font-size:.78rem}.ijx nav{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.ijx nav button,.ijx nav.modes a{border:1px solid var(--th-border);background:transparent;color:var(--th-text);border-radius:999px;padding:4px 10px;font:inherit;font-size:.75rem;cursor:pointer;text-decoration:none}.ijx nav button.sel,.ijx nav.modes a[aria-current=page]{background:var(--red);border-color:var(--red);color:#fff}.ijx h2{font-size:.95rem;margin:0 0 6px}.ijx h3{font-size:.72rem;margin:12px 0 4px;color:var(--th-text-muted);text-transform:uppercase;letter-spacing:.05em}.ijx section p{margin:0 0 10px;font-size:.85rem}.ijx section ul{margin:0;padding-left:16px;color:var(--th-text-muted);font-size:.75rem}.ijx .legend{color:var(--th-text-muted);font-size:.72rem;margin-top:14px}.ijx .legend a{color:inherit}.ijx main{min-width:0;height:100%;position:relative}.ijx .tools{position:absolute;z-index:10;top:10px;right:10px;display:flex;gap:6px}.ijx .tools button{border:1px solid var(--th-border);background:var(--th-bg-card);color:var(--th-text);border-radius:8px;padding:5px 10px;font:inherit;font-size:.75rem;cursor:pointer}.ijx:fullscreen{height:100vh}.ijx .react-flow{background:var(--th-bg)}.ijx .card{width:100%;height:100%;overflow:auto;background:var(--th-bg-card);color:var(--th-text);border:1.5px solid var(--th-border);border-radius:10px;padding:10px 12px;transition:opacity .2s,box-shadow .2s}.ijx .card.k-bff,.ijx .card.k-pf,.ijx .card.k-as{background:#b5231a;color:#fff;border-color:#b5231a}.ijx .card.k-bff .cs,.ijx .card.k-pf .cs,.ijx .card.k-as .cs,.ijx .card.k-bff ul,.ijx .card.k-pf ul,.ijx .card.k-as ul{color:#ffffffd9}.ijx .card.dim{opacity:.28}.ijx .card.on{border-color:#4da3ff;box-shadow:0 0 0 3px #4da3ff55,0 6px 18px #0000002e}.ijx .k-user{--c:var(--c-user)}.ijx .k-bff{--c:var(--c-bff)}.ijx .k-pf{--c:var(--c-pf)}.ijx .k-as{--c:var(--c-as)}.ijx .k-rs{--c:var(--c-rs)}.ijx .ct{font-weight:700;font-size:.85rem}.ijx .cs{color:var(--th-text-muted);font-size:.72rem;margin-bottom:4px}.ijx .card ul{margin:0;padding-left:16px;font-size:.72rem}.ijx .note{width:100%;height:100%;overflow:auto;background:#fcefc7;color:#5a4300;border:1px dashed #a88a2a;border-radius:8px;padding:8px 10px;font-size:.72rem;transition:opacity .2s}.ijx .note.dim{opacity:.2}.ijx .react-flow__edge-path{stroke:var(--th-text);stroke-width:1.6}.ijx .react-flow__controls-button{background:var(--th-bg-card);color:var(--th-text);border-color:var(--th-border)}.ijx .react-flow__controls-button svg{fill:var(--th-text)}.ijx .split{cursor:col-resize;background:var(--th-border)}.ijx .split:hover{background:var(--red)}.ijx .sim{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:10px}.ijx .sim button{border:1px solid var(--th-border);background:var(--th-bg);color:var(--th-text);border-radius:8px;padding:5px 10px;font:inherit;font-size:.75rem;cursor:pointer}.ijx .sim button.pri{background:var(--red);border-color:var(--red);color:#fff;font-weight:600}.ijx .sim button:disabled{opacity:.4;cursor:default}.ijx .hint{font-size:.75rem;color:var(--th-text-muted)}.ijx .elabel{position:absolute;pointer-events:none;background:var(--th-bg-card);color:var(--th-text);border:1px solid var(--th-border);border-radius:5px;padding:1px 6px;font-size:.7rem;white-space:nowrap}.ijx .pkt{fill:var(--red);stroke:#fff;stroke-width:2}.ijx button:focus-visible,.ijx a:focus-visible{outline:2px solid var(--red);outline-offset:2px}@media(max-width:800px){.ijx{height:auto}.ijx-app{grid-template-columns:1fr!important;grid-template-rows:auto 6px 60vh;height:auto}.ijx .split{display:none}}.ijx .react-flow{background:#e4e7ec}:root[data-theme=dark] .ijx .react-flow{background:#0b0e14}.ijx .react-flow__edge-path{stroke:#111;stroke-width:3.2}.ijx .react-flow__edge:hover .react-flow__edge-path{stroke:#000;stroke-width:4.2}.ijx .elabel{z-index:20;background:#fff;color:#000;border:1px solid #c9ced8;font-weight:700}:root[data-theme=dark] .ijx .react-flow__edge-path{stroke:#e8e8ec}:root[data-theme=dark] .ijx .elabel{background:#151a24;color:#f2f2f4;border-color:#3a4256}.ijx .elabel{display:flex;align-items:center;gap:6px;pointer-events:all;padding:2px 8px 2px 2px;border-radius:14px;max-width:420px;white-space:normal;line-height:1.25}.ijx .elabel:not(.words){padding:0;background:transparent;border-color:transparent}.ijx .elabel.words{z-index:30}.ijx .enum{display:inline-flex;align-items:center;justify-content:center;flex:none;min-width:24px;height:24px;border-radius:999px;background:#ff8c00;color:#111;font-weight:800;font-size:.8rem;border:2px solid #fff;box-shadow:0 1px 3px #00000059;opacity:.7}.ijx .elabel.on .enum,.ijx .elabel:hover .enum{opacity:1}:root[data-theme=dark] .ijx .enum{border-color:#0b0e14}.ijx .ewords{font-size:.72rem;font-weight:700;color:#000}:root[data-theme=dark] .ijx .ewords{color:#f2f2f4}.ijx .legend .enum{min-width:18px;height:18px;font-size:.68rem;opacity:1;vertical-align:middle}.ijx .legend .blue{color:#1f5fbf;font-weight:700}:root[data-theme=dark] .ijx .legend .blue{color:#6fa8ff}.ijx .react-flow__edge-path.dashed{stroke:#1f5fbf}:root[data-theme=dark] .ijx .react-flow__edge-path.dashed{stroke:#6fa8ff}.ijx marker[id*="1f5fbf"] polyline{stroke:#1f5fbf;fill:#1f5fbf}:root[data-theme=dark] .ijx marker[id*="1f5fbf"] polyline{stroke:#6fa8ff;fill:#6fa8ff}.ijx .card.sel,.ijx .note.sel{outline:3px solid #ff8c00;outline-offset:3px}.ijx .detail{margin-top:4px}.ijx .detail h3 .chip{margin-left:4px}.ijx .detail .muted{color:var(--th-text-muted);font-size:.7rem;margin:0 0 6px}.ijx .detail figure{margin:0 0 8px}.ijx .detail figcaption{font-size:.72rem;font-weight:700;margin-bottom:2px}.ijx .detail pre{margin:0;padding:8px 10px;overflow:auto;max-height:260px;background:var(--th-bg);border:1px solid var(--th-border);border-radius:6px;font-size:.68rem;line-height:1.4;color:var(--th-text)}.ijx .detail .token pre{border-style:dashed}.ijx .chip{display:inline-block;padding:0 7px;border-radius:999px;font-size:.62rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;border:1px solid var(--th-border);color:var(--th-text-muted);vertical-align:middle}.ijx .chip.rfc{color:#1f5fbf;border-color:#1f5fbf}.ijx .chip.spec{color:#0f766e;border-color:#0f766e}.ijx .chip.emerging{color:#8a4b00;background:#ffe3b8;border:1px dashed #b86100}.ijx .chip.mock{color:#111;background:#ff8c00;border-color:#ff8c00}:root[data-theme=dark] .ijx .chip.rfc{color:#6fa8ff;border-color:#6fa8ff}:root[data-theme=dark] .ijx .chip.spec{color:#4fd1c5;border-color:#4fd1c5}:root[data-theme=dark] .ijx .chip.emerging{color:#ffc069;background:#3a2800;border-color:#b86100}.ijx .refs{list-style:none;padding-left:0!important;margin:0 0 6px}.ijx .refs li{margin:0 0 5px;color:var(--th-text);font-size:.75rem}.ijx .refs li.emerging{border-left:3px solid #ff8c00;padding-left:6px}.ijx .elabel.side-r{--bx-x:-12px}.ijx .elabel.side-r.words{--bx-x:-14px}.ijx .elabel.side-l{--bx-x: calc(-100% + 12px) ;flex-direction:row-reverse}.ijx .elabel.side-l.words{--bx-x: calc(-100% + 14px) ;padding:2px 2px 2px 8px}.kc{--kc-red: var(--ping-red);--kc-red-text: #b00b0c;--kc-strong: #051727;--kc-ok: #15803d;--kc-warn: #b45309;max-width:1080px;margin:0 auto;padding:1.25rem 1.25rem 3rem;color:var(--th-text)}:root[data-theme=dark] .kc{--kc-red-text: #ff6b6c;--kc-strong: var(--th-text);--kc-ok: #4ade80;--kc-warn: #fbbf24}.kc h1,.kc h2,.kc h3{color:var(--kc-strong)}.kc a{color:inherit;font-weight:600;text-decoration-color:var(--kc-red);text-underline-offset:3px}.kc a:focus-visible,.kc button:focus-visible,.kc input:focus-visible,.kc textarea:focus-visible,.kc select:focus-visible{outline:2px solid var(--kc-red);outline-offset:2px}.kc-hero{padding:.25rem 0 .75rem;border-bottom:1px solid var(--th-border);margin-bottom:1rem}.kc-eyebrow{margin:0;font-size:var(--font-size-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--kc-red-text)}.kc-hero h1{margin:.2rem 0 .35rem;font-size:1.65rem;letter-spacing:-.01em}.kc-lede{margin:0;max-width:760px;color:var(--th-text-muted)}.kc-tabs{display:flex;gap:.25rem;border-bottom:2px solid var(--th-border);margin-bottom:1rem}.kc-tabs [role=tab]{font:inherit;font-weight:600;font-size:var(--font-size-xs);padding:.55rem 1rem;margin-bottom:-2px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--th-text-muted);cursor:pointer}.kc-tabs [role=tab]:hover{color:var(--th-text)}.kc-tabs [role=tab][aria-selected=true]{color:var(--kc-strong);border-image:var(--ping-grad) 1;border-bottom-style:solid}.kc-card,.kc-idp{padding:1rem 1.1rem;border:1px solid var(--th-border);border-radius:10px;background:var(--th-bg-card)}.kc-card{margin:1rem 0;border-top:4px solid var(--kc-red)}.kc-list{list-style:none;margin:0 0 1rem;padding:0;display:grid;gap:.75rem}.kc-idp{border-left:5px solid var(--th-text-muted)}.kc-idp[data-status=approved]{border-left-color:var(--kc-ok)}.kc-idp[data-status=pending]{border-left-color:var(--kc-warn)}.kc-idp[data-status=rejected],.kc-idp[data-status=disabled]{border-left-color:var(--kc-red)}.kc-idp__head{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.kc-idp__head h3{margin:0;font-size:1.05rem}.kc-badge{display:inline-block;padding:.12rem .6rem;border-radius:999px;font-size:var(--font-size-3xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase;border:1px solid currentColor}.kc-badge--approved{color:var(--kc-ok)}.kc-badge--pending{color:var(--kc-warn)}.kc-badge--rejected,.kc-badge--disabled{color:var(--kc-red-text)}.kc-kv{margin:.6rem 0 0;display:grid;grid-template-columns:minmax(9rem,max-content) 1fr;gap:.2rem .9rem;font-size:var(--font-size-xs)}.kc-kv dt{color:var(--th-text-muted);font-weight:600}.kc-kv dd{margin:0;overflow-wrap:anywhere}.kc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;margin-top:.75rem}.kc-btn{font:inherit;font-size:var(--font-size-xs);padding:.4rem .9rem;border:1px solid var(--th-border);border-radius:6px;background:var(--th-bg);color:var(--th-text);cursor:pointer}.kc-btn:hover:not(:disabled){border-color:var(--th-text-muted)}.kc-btn--primary{background:var(--ping-grad);border-color:var(--kc-red);color:var(--brand-on, #fff);font-weight:600}.kc-btn--danger{border-color:var(--kc-red);color:var(--kc-red-text);font-weight:600}.kc-btn:disabled{opacity:.45;cursor:not-allowed}.kc-form{margin:1rem 0;padding:1rem 1.1rem;border:1px solid var(--th-border);border-radius:10px;background:var(--th-bg-card)}.kc-form h2{margin:0 0 .5rem;font-size:1.15rem}.kc-field{display:flex;flex-direction:column;gap:.25rem;margin:.6rem 0;font-size:var(--font-size-xs);font-weight:600;max-width:640px}.kc-field input,.kc-field textarea{font:inherit;font-weight:400;padding:.4rem .55rem;border:1px solid var(--th-border);border-radius:6px;background:var(--th-bg);color:var(--th-text)}.kc-field small{font-weight:400;color:var(--th-text-muted)}.kc-inline{display:flex;gap:.5rem;align-items:stretch}.kc-inline input{flex:1;min-width:0}.kc-fieldset{margin:.6rem 0;padding:.4rem .75rem .6rem;border:1px solid var(--th-border);border-radius:8px;max-width:640px}.kc-fieldset legend{font-size:var(--font-size-xs);font-weight:600;padding:0 .3rem}.kc-choice{display:inline-flex;align-items:center;gap:.35rem;margin:.3rem 1rem .1rem 0;font-size:var(--font-size-xs)}.kc-hint{margin:.5rem 0;padding:.6rem .8rem;max-width:640px;border-left:4px solid var(--kc-red);background:var(--th-bg);border-radius:0 8px 8px 0;font-size:var(--font-size-xs)}.kc-hint p{margin:.2rem 0}.kc-banner{margin:.75rem 0;padding:.6rem .9rem;border-radius:8px;border:1px solid var(--kc-warn);background:#b453091a;font-size:var(--font-size-xs)}.kc-banner--error{border-color:var(--kc-red);background:#d20e0f14}.kc-banner--ok{border-color:var(--kc-ok);background:#15803d14}.kc-note{color:var(--th-text-muted);font-size:var(--font-size-xs)}.kc-secret{margin:1rem 0;padding:1rem 1.1rem;border:2px solid var(--kc-ok);border-radius:10px;background:var(--th-bg-card)}.kc-secret h3{margin:0 0 .3rem}.kc-secret input{letter-spacing:.02em}.kc-test{margin-top:.6rem;font-size:var(--font-size-xs)}.kc-table{width:100%;border-collapse:collapse;font-size:var(--font-size-2xs)}.kc-table th,.kc-table td{text-align:left;padding:.35rem .5rem;border-bottom:1px solid var(--th-border);vertical-align:top;overflow-wrap:anywhere}.kc-table th{color:var(--kc-strong)}.kc-table-wrap{overflow-x:auto}.kc-changes{margin:0;padding-left:1rem}.kc-toc{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem;margin:1rem 0 1.5rem;padding:0;list-style:none}.kc-toc a{display:block;height:100%;padding:.7rem .9rem;border:1px solid var(--th-border);border-top:3px solid var(--kc-red);border-radius:8px;background:var(--th-bg-card);text-decoration:none}.kc-toc a:hover{border-color:var(--th-text-muted);border-top-color:var(--kc-red)}.kc-guide{margin:0 0 2rem;padding:1.1rem 1.25rem;border:1px solid var(--th-border);border-radius:10px;background:var(--th-bg-card);scroll-margin-top:1rem}.kc-guide h2{margin-top:0}.kc-guide h3{font-size:.95rem;margin:1.1rem 0 .3rem}.kc-guide ol,.kc-guide ul{padding-left:1.3rem}.kc-guide li{margin:.3rem 0}.kc-guide strong{color:var(--kc-strong)}.kc-term{font-weight:600;padding:0 .25rem;border-radius:4px;background:var(--th-bg-page)}.kc-code{margin:.5rem 0;padding:.75rem 1rem;border-radius:6px;background:var(--th-bg-page);overflow-x:auto;font-size:.85rem;line-height:1.5;white-space:pre}@media(max-width:560px){.kc-kv{grid-template-columns:1fr}.kc-inline{flex-direction:column}}.kc-search{display:grid;gap:.3rem;max-width:420px;margin:.75rem 0;font-weight:600}.kc-search input{padding:.45rem .6rem;border:1px solid var(--th-border);border-radius:6px;background:var(--th-bg);color:var(--th-text);font:inherit}.kc-glossary{display:grid;gap:.75rem;margin:0}.kc-glossary dt{font-weight:700;color:var(--kc-strong);scroll-margin-top:5rem}.kc-glossary dd{margin:.15rem 0 0;max-width:75ch;color:var(--th-text-muted)}.kc-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:.75rem 0}.kc-chips button{padding:.3rem .75rem;border:1px solid var(--th-border);border-radius:999px;background:var(--th-bg);color:var(--th-text);font:inherit;cursor:pointer}.kc-chips button[aria-pressed=true]{border-color:var(--th-accent, #b3282d);color:var(--th-accent, #b3282d);font-weight:700}.kc-status{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:var(--font-size-2xs);font-weight:600;white-space:nowrap;background:var(--th-bg-page)}.kc-status--verified{color:#1d7a4b}.kc-status--not-read{color:#b7791f}
