<!DOCTYPE html><html lang="en" translate="no"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="/brand/light.svg?v=20260909"/><link rel="preload" as="image" href="https://aihubmix.com/blog-media/images/2026/10/b3979112d3018b38.png" fetchPriority="high"/><meta name="google" content="notranslate"/><link rel="icon" href="/favicon.ico?v=2"/><link rel="apple-touch-icon" href="/apple-touch-icon.png"/><meta name="theme-color" content="#ffffff"/><meta name="referrer" content="strict-origin-when-cross-origin"/><title>Codex Compaction Fails With &quot;response protection is unavailable&quot;: It&#x27;s the Web Search, Not Your Context | AIHubMix Blog</title><meta name="description" content="Since October 8, 2026, long Codex sessions have been dying the moment they try to compact. The error reads stream disconnected before completion: response…"/><meta name="keywords" content="Tutorial, AIHubMix, AIHubMix Blog"/><link rel="canonical" href="https://aihubmix.com/blog/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" type="text/markdown" href="https://aihubmix.com/llms.txt"/><meta name="robots" content="index, follow"/><meta property="og:site_name" content="AIHubMix"/><meta property="og:type" content="article"/><meta property="og:title" content="Codex Compaction Fails With &quot;response protection is unavailable&quot;: It&#x27;s the Web Search, Not Your Context | AIHubMix Blog"/><meta property="og:description" content="Since October 8, 2026, long Codex sessions have been dying the moment they try to compact. The error reads stream…"/><meta property="og:url" content="https://aihubmix.com/blog/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><meta property="og:image" content="https://aihubmix.com/blog-media/images/2026/10/b3979112d3018b38.png"/><meta property="og:image:alt" content="Codex Compaction Fails With &quot;response protection is unavailable&quot;: It&#x27;s the Web Search, Not Your Context | AIHubMix Blog"/><meta property="og:locale" content="en_US"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:site" content="@aihubmix"/><meta name="twitter:creator" content="@aihubmix"/><meta name="twitter:title" content="Codex Compaction Fails With &quot;response protection is unavailable&quot;: It&#x27;s the Web Search, Not Your Context | AIHubMix Blog"/><meta name="twitter:description" content="Since October 8, 2026, long Codex sessions have been dying the moment they try to compact. The error reads stream…"/><meta name="twitter:image" content="https://aihubmix.com/blog-media/images/2026/10/b3979112d3018b38.png"/><meta property="article:published_time" content="2026-10-10T08:35:09.000+00:00"/><meta property="article:modified_time" content="2026-10-10T08:35:09.000+00:00"/><link rel="alternate" hrefLang="en" href="https://aihubmix.com/blog/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="zh-CN" href="https://aihubmix.com/blog/zh-CN/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="zh-TW" href="https://aihubmix.com/blog/zh-TW/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="ja" href="https://aihubmix.com/blog/ja/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="ko" href="https://aihubmix.com/blog/ko/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="de" href="https://aihubmix.com/blog/de/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="es" href="https://aihubmix.com/blog/es/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="fr" href="https://aihubmix.com/blog/fr/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="pt" href="https://aihubmix.com/blog/pt/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="ru" href="https://aihubmix.com/blog/ru/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="tr" href="https://aihubmix.com/blog/tr/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="pl" href="https://aihubmix.com/blog/pl/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="nl" href="https://aihubmix.com/blog/nl/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="it" href="https://aihubmix.com/blog/it/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="vi" href="https://aihubmix.com/blog/vi/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="uk" href="https://aihubmix.com/blog/uk/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="bg" href="https://aihubmix.com/blog/bg/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="alternate" hrefLang="x-default" href="https://aihubmix.com/blog/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"/><link rel="modulepreload" href="/static/manifest-b20be33c.js"/><link rel="modulepreload" href="/static/entry.client-D3GyZyxc.js"/><link rel="modulepreload" href="/static/jsx-runtime-CgWCn3gT.js"/><link rel="modulepreload" href="/static/i18nInstance-C_7vXBXC.js"/><link rel="modulepreload" href="/static/index-ao6ir_VS.js"/><link rel="modulepreload" href="/static/preload-helper-BXl3LOEh.js"/><link rel="modulepreload" href="/static/root-Dl-AuaVW.js"/><link rel="modulepreload" href="/static/useTranslation-CksCcIr-.js"/><link rel="modulepreload" href="/static/error-page-Bt0s4Oe9.js"/><link rel="modulepreload" href="/static/blog-BzQtJgIa.js"/><link rel="modulepreload" href="/static/legacy-shell-D4JdMu14.js"/><link rel="modulepreload" href="/static/index-DXVaY-vM.js"/><link rel="modulepreload" href="/static/seo-meta-Bpqygpx8.js"/><link rel="modulepreload" href="/static/tokens-BZ4Gg0Cj.js"/><link rel="modulepreload" href="/static/controls-B5mJZGsg.js"/><link rel="modulepreload" href="/static/index-Bl0f4fRW.js"/><link rel="modulepreload" href="/static/styled-components.browser.esm-CQ4IZagM.js"/><link rel="modulepreload" href="/static/blogColumn-BobpY0f9.js"/><link rel="modulepreload" href="/static/SearchOutlined-4CAPyJbl.js"/><link rel="modulepreload" href="/static/ArrowLeftOutlined-PEnSNofW.js"/><link rel="modulepreload" href="/static/modelCount-CKhxfxhQ.js"/><link rel="modulepreload" href="/static/seoDom-D06K2jw6.js"/><link rel="modulepreload" href="/static/index-NPPpTHXJ.js"/><link rel="modulepreload" href="/static/index-DKjRcP81.js"/><script>(function () {
  try {
    var h = location.hostname;
    if (!h) return;
    if (/(^|\.)(aihubmix\.com|inferera\.com|shkq\.org)$/.test(h)) return;
    if (h === 'localhost' || h === '127.0.0.1' || h === '[::1]' || /\.local$/.test(h)) return;
    if (/^(10\.|127\.|192\.168\.|172\.(1[6-9]|2[0-9]|3[01])\.)/.test(h)) return;
    var esc = /[?&]__noguard=1/.test(location.search);
    try {
      if (esc) sessionStorage.setItem('__noguard', '1');
      if (esc || sessionStorage.getItem('__noguard') === '1') return;
    } catch (e) { if (esc) return; }
    var q = location.search ? location.search + '&' : '?';
    location.replace('https://aihubmix.com' + location.pathname.replace(/^\/+/, '/') + q + '__mfrom=' + encodeURIComponent(h) + location.hash);
  } catch (e) {}
})();</script><style id="ssr-antd">a:where(.css-1xohofr){color:#1677ff;text-decoration:none;background-color:transparent;outline:none;cursor:pointer;transition:color 0.3s;-webkit-text-decoration-skip:objects;}a:where(.css-1xohofr):hover{color:#69b1ff;}a:where(.css-1xohofr):active{color:#0958d9;}a:where(.css-1xohofr):active,a:where(.css-1xohofr):hover{text-decoration:none;outline:0;}a:where(.css-1xohofr):focus{text-decoration:none;outline:0;}a:where(.css-1xohofr)[disabled]{color:rgba(0,0,0,0.25);cursor:not-allowed;}:where(.css-1xohofr) a{color:#1677ff;text-decoration:none;background-color:transparent;outline:none;cursor:pointer;transition:color 0.3s;-webkit-text-decoration-skip:objects;}:where(.css-1xohofr) a:hover{color:#69b1ff;}:where(.css-1xohofr) a:active{color:#0958d9;}:where(.css-1xohofr) a:active,:where(.css-1xohofr) a:hover{text-decoration:none;outline:0;}:where(.css-1xohofr) a:focus{text-decoration:none;outline:0;}:where(.css-1xohofr) a[disabled]{color:rgba(0,0,0,0.25);cursor:not-allowed;}:where(.css-1xohofr).anticon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}:where(.css-1xohofr).anticon >*{line-height:1;}:where(.css-1xohofr).anticon svg{display:inline-block;}:where(.css-1xohofr).anticon .anticon .anticon-icon{display:block;}:where(.css-1xohofr).ant-layout{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;font-size:14px;box-sizing:border-box;}:where(.css-1xohofr).ant-layout::before,:where(.css-1xohofr).ant-layout::after{box-sizing:border-box;}:where(.css-1xohofr).ant-layout [class^="ant-layout"],:where(.css-1xohofr).ant-layout [class*=" ant-layout"]{box-sizing:border-box;}:where(.css-1xohofr).ant-layout [class^="ant-layout"]::before,:where(.css-1xohofr).ant-layout [class*=" ant-layout"]::before,:where(.css-1xohofr).ant-layout [class^="ant-layout"]::after,:where(.css-1xohofr).ant-layout [class*=" ant-layout"]::after{box-sizing:border-box;}:where(.css-1xohofr).ant-layout{display:flex;flex:auto;flex-direction:column;min-height:0;background:#f5f5f5;}:where(.css-1xohofr).ant-layout,:where(.css-1xohofr).ant-layout *{box-sizing:border-box;}:where(.css-1xohofr).ant-layout.ant-layout-has-sider{flex-direction:row;}:where(.css-1xohofr).ant-layout.ant-layout-has-sider >.ant-layout,:where(.css-1xohofr).ant-layout.ant-layout-has-sider >.ant-layout-content{width:0;}:where(.css-1xohofr).ant-layout .ant-layout-header,:where(.css-1xohofr).ant-layout.ant-layout-footer{flex:0 0 auto;}:where(.css-1xohofr).ant-layout-rtl{direction:rtl;}:where(.css-1xohofr).ant-layout-header{height:64px;padding:0 50px;color:rgba(0,0,0,0.88);line-height:64px;background:#001529;}:where(.css-1xohofr).ant-layout-header .ant-menu{line-height:inherit;}:where(.css-1xohofr).ant-layout-footer{padding:24px 50px;color:rgba(0,0,0,0.88);font-size:14px;background:#f5f5f5;}:where(.css-1xohofr).ant-layout-content{flex:auto;color:rgba(0,0,0,0.88);min-height:0;}a:where(.css-18nm6z4){color:#1677ff;text-decoration:none;background-color:transparent;outline:none;cursor:pointer;transition:color 0.3s;-webkit-text-decoration-skip:objects;}a:where(.css-18nm6z4):hover{color:#69b1ff;}a:where(.css-18nm6z4):active{color:#0958d9;}a:where(.css-18nm6z4):active,a:where(.css-18nm6z4):hover{text-decoration:none;outline:0;}a:where(.css-18nm6z4):focus{text-decoration:none;outline:0;}a:where(.css-18nm6z4)[disabled]{color:rgba(0,0,0,0.25);cursor:not-allowed;}:where(.css-18nm6z4) a{color:#1677ff;text-decoration:none;background-color:transparent;outline:none;cursor:pointer;transition:color 0.3s;-webkit-text-decoration-skip:objects;}:where(.css-18nm6z4) a:hover{color:#69b1ff;}:where(.css-18nm6z4) a:active{color:#0958d9;}:where(.css-18nm6z4) a:active,:where(.css-18nm6z4) a:hover{text-decoration:none;outline:0;}:where(.css-18nm6z4) a:focus{text-decoration:none;outline:0;}:where(.css-18nm6z4) a[disabled]{color:rgba(0,0,0,0.25);cursor:not-allowed;}:where(.css-18nm6z4).anticon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}:where(.css-18nm6z4).anticon >*{line-height:1;}:where(.css-18nm6z4).anticon svg{display:inline-block;}:where(.css-18nm6z4).anticon .anticon .anticon-icon{display:block;}:where(.css-18nm6z4).ant-layout{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;font-size:14px;box-sizing:border-box;}:where(.css-18nm6z4).ant-layout::before,:where(.css-18nm6z4).ant-layout::after{box-sizing:border-box;}:where(.css-18nm6z4).ant-layout [class^="ant-layout"],:where(.css-18nm6z4).ant-layout [class*=" ant-layout"]{box-sizing:border-box;}:where(.css-18nm6z4).ant-layout [class^="ant-layout"]::before,:where(.css-18nm6z4).ant-layout [class*=" ant-layout"]::before,:where(.css-18nm6z4).ant-layout [class^="ant-layout"]::after,:where(.css-18nm6z4).ant-layout [class*=" ant-layout"]::after{box-sizing:border-box;}:where(.css-18nm6z4).ant-layout{display:flex;flex:auto;flex-direction:column;min-height:0;background:transparent;}:where(.css-18nm6z4).ant-layout,:where(.css-18nm6z4).ant-layout *{box-sizing:border-box;}:where(.css-18nm6z4).ant-layout.ant-layout-has-sider{flex-direction:row;}:where(.css-18nm6z4).ant-layout.ant-layout-has-sider >.ant-layout,:where(.css-18nm6z4).ant-layout.ant-layout-has-sider >.ant-layout-content{width:0;}:where(.css-18nm6z4).ant-layout .ant-layout-header,:where(.css-18nm6z4).ant-layout.ant-layout-footer{flex:0 0 auto;}:where(.css-18nm6z4).ant-layout-rtl{direction:rtl;}:where(.css-18nm6z4).ant-layout-header{height:64px;padding:0 50px;color:rgba(0,0,0,0.88);line-height:64px;background:transparent;}:where(.css-18nm6z4).ant-layout-header .ant-menu{line-height:inherit;}:where(.css-18nm6z4).ant-layout-footer{padding:24px 50px;color:rgba(0,0,0,0.88);font-size:14px;background:#f5f5f5;}:where(.css-18nm6z4).ant-layout-content{flex:auto;color:rgba(0,0,0,0.88);min-height:0;}:where(.css-18nm6z4).ant-dropdown{position:absolute;top:-9999px;left:-9999px;z-index:1050;display:block;}:where(.css-18nm6z4).ant-dropdown::before{position:absolute;inset-block:-4px;z-index:-9999;opacity:0.0001;content:"";}:where(.css-18nm6z4).ant-dropdown-menu-vertical{max-height:100vh;overflow-y:auto;}:where(.css-18nm6z4).ant-dropdown-trigger.ant-btn>.anticon-down,:where(.css-18nm6z4).ant-dropdown-trigger.ant-btn>.ant-btn-icon>.anticon-down{font-size:12px;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-wrap{position:relative;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-wrap .ant-btn>.anticon-down{font-size:12px;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-wrap .anticon-down::before{transition:transform 0.2s;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-wrap-open .anticon-down::before{transform:rotate(180deg);}:where(.css-18nm6z4).ant-dropdown-hidden,:where(.css-18nm6z4).ant-dropdown-menu-hidden,:where(.css-18nm6z4).ant-dropdown-menu-submenu-hidden{display:none;}:where(.css-18nm6z4).ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomLeft,:where(.css-18nm6z4).ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomLeft,:where(.css-18nm6z4).ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottom,:where(.css-18nm6z4).ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottom,:where(.css-18nm6z4).ant-dropdown.ant-slide-down-enter.ant-slide-down-enter-active.ant-dropdown-placement-bottomRight,:where(.css-18nm6z4).ant-dropdown.ant-slide-down-appear.ant-slide-down-appear-active.ant-dropdown-placement-bottomRight{animation-name:css-18nm6z4-antSlideUpIn;}:where(.css-18nm6z4).ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topLeft,:where(.css-18nm6z4).ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topLeft,:where(.css-18nm6z4).ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-top,:where(.css-18nm6z4).ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-top,:where(.css-18nm6z4).ant-dropdown.ant-slide-up-enter.ant-slide-up-enter-active.ant-dropdown-placement-topRight,:where(.css-18nm6z4).ant-dropdown.ant-slide-up-appear.ant-slide-up-appear-active.ant-dropdown-placement-topRight{animation-name:css-18nm6z4-antSlideDownIn;}:where(.css-18nm6z4).ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomLeft,:where(.css-18nm6z4).ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottom,:where(.css-18nm6z4).ant-dropdown.ant-slide-down-leave.ant-slide-down-leave-active.ant-dropdown-placement-bottomRight{animation-name:css-18nm6z4-antSlideUpOut;}:where(.css-18nm6z4).ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topLeft,:where(.css-18nm6z4).ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-top,:where(.css-18nm6z4).ant-dropdown.ant-slide-up-leave.ant-slide-up-leave-active.ant-dropdown-placement-topRight{animation-name:css-18nm6z4-antSlideDownOut;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-arrow{position:absolute;z-index:1;display:block;pointer-events:none;width:16px;height:16px;overflow:hidden;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-arrow::before{position:absolute;bottom:0;inset-inline-start:0;width:16px;height:8px;background:#ffffff;clip-path:polygon(1.6568542494923806px 100%, 50% 1.6568542494923806px, 14.34314575050762px 100%, 1.6568542494923806px 100%);clip-path:path('M 0 8 A 4 4 0 0 0 2.82842712474619 6.82842712474619 L 6.585786437626905 3.0710678118654755 A 2 2 0 0 1 9.414213562373096 3.0710678118654755 L 13.17157287525381 6.82842712474619 A 4 4 0 0 0 16 8 Z');content:"";}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-arrow::after{content:"";position:absolute;width:8.970562748477143px;height:8.970562748477143px;bottom:0;inset-inline:0;margin:auto;border-radius:0 0 2px 0;transform:translateY(50%) rotate(-135deg);box-shadow:2px 2px 5px rgba(0, 0, 0, 0.05);z-index:0;background:transparent;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-arrow:before{background:#ffffff;}:where(.css-18nm6z4).ant-dropdown-placement-top>.ant-dropdown-arrow,:where(.css-18nm6z4).ant-dropdown-placement-topLeft>.ant-dropdown-arrow,:where(.css-18nm6z4).ant-dropdown-placement-topRight>.ant-dropdown-arrow{bottom:0;transform:translateY(100%) rotate(180deg);}:where(.css-18nm6z4).ant-dropdown-placement-top>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) translateY(100%) rotate(180deg);}:where(.css-18nm6z4).ant-dropdown-placement-topLeft{--arrow-offset-horizontal:12px;}:where(.css-18nm6z4).ant-dropdown-placement-topLeft >.ant-dropdown-arrow{left:12px;}:where(.css-18nm6z4).ant-dropdown-placement-topRight{--arrow-offset-horizontal:calc(100% - 12px);}:where(.css-18nm6z4).ant-dropdown-placement-topRight >.ant-dropdown-arrow{right:12px;}:where(.css-18nm6z4).ant-dropdown-placement-bottom>.ant-dropdown-arrow,:where(.css-18nm6z4).ant-dropdown-placement-bottomLeft>.ant-dropdown-arrow,:where(.css-18nm6z4).ant-dropdown-placement-bottomRight>.ant-dropdown-arrow{top:0;transform:translateY(-100%);}:where(.css-18nm6z4).ant-dropdown-placement-bottom>.ant-dropdown-arrow{left:50%;transform:translateX(-50%) translateY(-100%);}:where(.css-18nm6z4).ant-dropdown-placement-bottomLeft{--arrow-offset-horizontal:12px;}:where(.css-18nm6z4).ant-dropdown-placement-bottomLeft >.ant-dropdown-arrow{left:12px;}:where(.css-18nm6z4).ant-dropdown-placement-bottomRight{--arrow-offset-horizontal:calc(100% - 12px);}:where(.css-18nm6z4).ant-dropdown-placement-bottomRight >.ant-dropdown-arrow{right:12px;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu{position:relative;margin:0;}:where(.css-18nm6z4).ant-dropdown-menu-submenu-popup{position:absolute;z-index:1050;background:transparent;box-shadow:none;transform-origin:0 0;}:where(.css-18nm6z4).ant-dropdown-menu-submenu-popup ul,:where(.css-18nm6z4).ant-dropdown-menu-submenu-popup li{list-style:none;margin:0;}:where(.css-18nm6z4).ant-dropdown,:where(.css-18nm6z4).ant-dropdown-menu-submenu{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,0.88);font-size:14px;line-height:1.5714285714285714;list-style:none;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu{padding:4px;list-style-type:none;background-color:#ffffff;background-clip:padding-box;border-radius:8px;outline:none;box-shadow:0 6px 16px 0 rgba(0, 0, 0, 0.08),0 3px 6px -4px rgba(0, 0, 0, 0.12),0 9px 28px 8px rgba(0, 0, 0, 0.05);}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu:focus-visible,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu:focus-visible{outline:3px solid #0049DF;outline-offset:1px;transition:outline-offset 0s,outline 0s;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu:empty,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu:empty{padding:0;box-shadow:none;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-group-title,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-group-title{padding:5px 12px;color:rgba(0,0,0,0.45);transition:all 0.2s;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item{position:relative;display:flex;align-items:center;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-icon,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-icon{min-width:14px;margin-inline-end:8px;font-size:12px;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content{flex:auto;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content-with-extra,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content-with-extra{display:inline-flex;align-items:center;width:100%;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content >a,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content >a{color:inherit;transition:all 0.2s;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content >a:hover,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content >a:hover{color:inherit;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content >a::after,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content >a::after{position:absolute;inset:0;content:"";}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-title-content .ant-dropdown-menu-item-extra,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-title-content .ant-dropdown-menu-item-extra{padding-inline-start:16px;margin-inline-start:auto;font-size:12px;color:rgba(0,0,0,0.45);}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title{display:flex;margin:0;padding:5px 12px;color:rgba(0,0,0,0.88);font-weight:normal;font-size:14px;line-height:1.5714285714285714;cursor:pointer;transition:all 0.2s;border-radius:4px;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item:hover,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item:hover,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title:hover,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title:hover,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-active,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-active,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-active,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-active{background-color:rgba(0,0,0,0.04);}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item:focus-visible,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item:focus-visible,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title:focus-visible,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title:focus-visible{outline:3px solid #0049DF;outline-offset:1px;transition:outline-offset 0s,outline 0s;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-selected,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-selected,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected{color:#2563eb;background-color:#f0f7ff;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-selected:hover,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-selected:hover,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected:hover,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected:hover,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-selected-active,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-selected-active,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected-active,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-selected-active{background-color:#cce3ff;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-disabled,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-disabled,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled{color:rgba(0,0,0,0.25);cursor:not-allowed;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-disabled:hover,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-disabled:hover,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled:hover,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled:hover{color:rgba(0,0,0,0.25);background-color:#ffffff;cursor:not-allowed;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-disabled a,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-disabled a,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled a,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-disabled a{pointer-events:none;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-divider,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-divider,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title-divider,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title-divider{height:1px;margin:4px 0;overflow:hidden;line-height:0;background-color:rgba(5,5,5,0.06);}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon{position:absolute;inset-inline-end:8px;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-expand-icon .ant-dropdown-menu-submenu-arrow-icon{margin-inline-end:0!important;color:rgba(0,0,0,0.45);font-size:12px;font-style:normal;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item-group-list,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item-group-list{margin:0 8px;padding:0;list-style:none;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-title,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-title{padding-inline-end:24px;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-vertical,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-vertical{position:relative;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title,:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow-icon,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu.ant-dropdown-menu-submenu-disabled .ant-dropdown-menu-submenu-title .ant-dropdown-menu-submenu-arrow-icon{color:rgba(0,0,0,0.25);background-color:#ffffff;cursor:not-allowed;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-submenu-selected .ant-dropdown-menu-submenu-title,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-submenu-selected .ant-dropdown-menu-submenu-title{color:#2563eb;}:where(.css-18nm6z4).ant-slide-up-enter,:where(.css-18nm6z4).ant-slide-up-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-slide-up-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-slide-up-enter.ant-slide-up-enter-active,:where(.css-18nm6z4).ant-slide-up-appear.ant-slide-up-appear-active{animation-name:css-18nm6z4-antSlideUpIn;animation-play-state:running;}:where(.css-18nm6z4).ant-slide-up-leave.ant-slide-up-leave-active{animation-name:css-18nm6z4-antSlideUpOut;animation-play-state:running;pointer-events:none;}:where(.css-18nm6z4).ant-slide-up-enter,:where(.css-18nm6z4).ant-slide-up-appear{transform:scale(0);transform-origin:0% 0%;opacity:0;animation-timing-function:cubic-bezier(0.23, 1, 0.32, 1);}:where(.css-18nm6z4).ant-slide-up-enter-prepare,:where(.css-18nm6z4).ant-slide-up-appear-prepare{transform:scale(1);}:where(.css-18nm6z4).ant-slide-up-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}:where(.css-18nm6z4).ant-slide-down-enter,:where(.css-18nm6z4).ant-slide-down-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-slide-down-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-slide-down-enter.ant-slide-down-enter-active,:where(.css-18nm6z4).ant-slide-down-appear.ant-slide-down-appear-active{animation-name:css-18nm6z4-antSlideDownIn;animation-play-state:running;}:where(.css-18nm6z4).ant-slide-down-leave.ant-slide-down-leave-active{animation-name:css-18nm6z4-antSlideDownOut;animation-play-state:running;pointer-events:none;}:where(.css-18nm6z4).ant-slide-down-enter,:where(.css-18nm6z4).ant-slide-down-appear{transform:scale(0);transform-origin:0% 0%;opacity:0;animation-timing-function:cubic-bezier(0.23, 1, 0.32, 1);}:where(.css-18nm6z4).ant-slide-down-enter-prepare,:where(.css-18nm6z4).ant-slide-down-appear-prepare{transform:scale(1);}:where(.css-18nm6z4).ant-slide-down-leave{animation-timing-function:cubic-bezier(0.755, 0.05, 0.855, 0.06);}:where(.css-18nm6z4).ant-move-up-enter,:where(.css-18nm6z4).ant-move-up-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-move-up-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-move-up-enter.ant-move-up-enter-active,:where(.css-18nm6z4).ant-move-up-appear.ant-move-up-appear-active{animation-name:css-18nm6z4-antMoveUpIn;animation-play-state:running;}:where(.css-18nm6z4).ant-move-up-leave.ant-move-up-leave-active{animation-name:css-18nm6z4-antMoveUpOut;animation-play-state:running;pointer-events:none;}:where(.css-18nm6z4).ant-move-up-enter,:where(.css-18nm6z4).ant-move-up-appear{opacity:0;animation-timing-function:cubic-bezier(0.08, 0.82, 0.17, 1);}:where(.css-18nm6z4).ant-move-up-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}:where(.css-18nm6z4).ant-move-down-enter,:where(.css-18nm6z4).ant-move-down-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-move-down-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-move-down-enter.ant-move-down-enter-active,:where(.css-18nm6z4).ant-move-down-appear.ant-move-down-appear-active{animation-name:css-18nm6z4-antMoveDownIn;animation-play-state:running;}:where(.css-18nm6z4).ant-move-down-leave.ant-move-down-leave-active{animation-name:css-18nm6z4-antMoveDownOut;animation-play-state:running;pointer-events:none;}:where(.css-18nm6z4).ant-move-down-enter,:where(.css-18nm6z4).ant-move-down-appear{opacity:0;animation-timing-function:cubic-bezier(0.08, 0.82, 0.17, 1);}:where(.css-18nm6z4).ant-move-down-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}:where(.css-18nm6z4).ant-zoom-big-enter,:where(.css-18nm6z4).ant-zoom-big-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-zoom-big-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-zoom-big-enter.ant-zoom-big-enter-active,:where(.css-18nm6z4).ant-zoom-big-appear.ant-zoom-big-appear-active{animation-name:css-18nm6z4-antZoomBigIn;animation-play-state:running;}:where(.css-18nm6z4).ant-zoom-big-leave.ant-zoom-big-leave-active{animation-name:css-18nm6z4-antZoomBigOut;animation-play-state:running;pointer-events:none;}:where(.css-18nm6z4).ant-zoom-big-enter,:where(.css-18nm6z4).ant-zoom-big-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(0.08, 0.82, 0.17, 1);}:where(.css-18nm6z4).ant-zoom-big-enter-prepare,:where(.css-18nm6z4).ant-zoom-big-appear-prepare{transform:none;}:where(.css-18nm6z4).ant-zoom-big-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item.ant-dropdown-menu-item-danger:not(.ant-dropdown-menu-item-disabled),:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item.ant-dropdown-menu-item-danger:not(.ant-dropdown-menu-item-disabled){color:#ff4d4f;}:where(.css-18nm6z4).ant-dropdown .ant-dropdown-menu .ant-dropdown-menu-item.ant-dropdown-menu-item-danger:not(.ant-dropdown-menu-item-disabled):hover,:where(.css-18nm6z4).ant-dropdown-menu-submenu .ant-dropdown-menu .ant-dropdown-menu-item.ant-dropdown-menu-item-danger:not(.ant-dropdown-menu-item-disabled):hover{color:#fff;background-color:#ff4d4f;}@keyframes css-18nm6z4-antSlideUpIn{0%{transform:scaleY(0.8);transform-origin:0% 0%;opacity:0;}100%{transform:scaleY(1);transform-origin:0% 0%;opacity:1;}}@keyframes css-18nm6z4-antSlideDownIn{0%{transform:scaleY(0.8);transform-origin:100% 100%;opacity:0;}100%{transform:scaleY(1);transform-origin:100% 100%;opacity:1;}}@keyframes css-18nm6z4-antSlideUpOut{0%{transform:scaleY(1);transform-origin:0% 0%;opacity:1;}100%{transform:scaleY(0.8);transform-origin:0% 0%;opacity:0;}}@keyframes css-18nm6z4-antSlideDownOut{0%{transform:scaleY(1);transform-origin:100% 100%;opacity:1;}100%{transform:scaleY(0.8);transform-origin:100% 100%;opacity:0;}}@keyframes css-18nm6z4-antMoveUpIn{0%{transform:translate3d(0, -100%, 0);transform-origin:0 0;opacity:0;}100%{transform:translate3d(0, 0, 0);transform-origin:0 0;opacity:1;}}@keyframes css-18nm6z4-antMoveUpOut{0%{transform:translate3d(0, 0, 0);transform-origin:0 0;opacity:1;}100%{transform:translate3d(0, -100%, 0);transform-origin:0 0;opacity:0;}}@keyframes css-18nm6z4-antMoveDownIn{0%{transform:translate3d(0, 100%, 0);transform-origin:0 0;opacity:0;}100%{transform:translate3d(0, 0, 0);transform-origin:0 0;opacity:1;}}@keyframes css-18nm6z4-antMoveDownOut{0%{transform:translate3d(0, 0, 0);transform-origin:0 0;opacity:1;}100%{transform:translate3d(0, 100%, 0);transform-origin:0 0;opacity:0;}}@keyframes css-18nm6z4-antZoomBigIn{0%{transform:scale(0.8);opacity:0;}100%{transform:scale(1);opacity:1;}}@keyframes css-18nm6z4-antZoomBigOut{0%{transform:scale(1);}100%{transform:scale(0.8);opacity:0;}}:where(.css-18nm6z4).ant-tooltip{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,0.88);font-size:14px;line-height:1.5714285714285714;list-style:none;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;position:absolute;z-index:1070;display:block;width:max-content;max-width:250px;visibility:visible;--valid-offset-x:var(--arrow-offset-horizontal, var(--arrow-x));transform-origin:var(--valid-offset-x, 50%) var(--arrow-y, 50%);--antd-arrow-background-color:rgba(0,0,0,0.85);}:where(.css-18nm6z4).ant-tooltip-hidden{display:none;}:where(.css-18nm6z4).ant-tooltip .ant-tooltip-inner{min-width:28px;min-height:32px;padding:6px 8px;color:var(--ant-tooltip-color, #fff);text-align:start;text-decoration:none;word-wrap:break-word;background-color:rgba(0,0,0,0.85);border-radius:6px;box-shadow:0 6px 16px 0 rgba(0, 0, 0, 0.08),0 3px 6px -4px rgba(0, 0, 0, 0.12),0 9px 28px 8px rgba(0, 0, 0, 0.05);box-sizing:border-box;}:where(.css-18nm6z4).ant-tooltip-placement-topLeft,:where(.css-18nm6z4).ant-tooltip-placement-topRight,:where(.css-18nm6z4).ant-tooltip-placement-bottomLeft,:where(.css-18nm6z4).ant-tooltip-placement-bottomRight{min-width:34px;}:where(.css-18nm6z4).ant-tooltip-placement-left .ant-tooltip-inner,:where(.css-18nm6z4).ant-tooltip-placement-leftTop .ant-tooltip-inner,:where(.css-18nm6z4).ant-tooltip-placement-leftBottom .ant-tooltip-inner,:where(.css-18nm6z4).ant-tooltip-placement-right .ant-tooltip-inner,:where(.css-18nm6z4).ant-tooltip-placement-rightTop .ant-tooltip-inner,:where(.css-18nm6z4).ant-tooltip-placement-rightBottom .ant-tooltip-inner{border-radius:6px;}:where(.css-18nm6z4).ant-tooltip .ant-tooltip-content{position:relative;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-blue .ant-tooltip-inner{background-color:#1677ff;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-blue .ant-tooltip-arrow{--antd-arrow-background-color:#1677ff;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-purple .ant-tooltip-inner{background-color:#722ed1;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-purple .ant-tooltip-arrow{--antd-arrow-background-color:#722ed1;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-cyan .ant-tooltip-inner{background-color:#13c2c2;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-cyan .ant-tooltip-arrow{--antd-arrow-background-color:#13c2c2;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-green .ant-tooltip-inner{background-color:#52c41a;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-green .ant-tooltip-arrow{--antd-arrow-background-color:#52c41a;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-magenta .ant-tooltip-inner{background-color:#eb2f96;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-magenta .ant-tooltip-arrow{--antd-arrow-background-color:#eb2f96;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-pink .ant-tooltip-inner{background-color:#eb2f96;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-pink .ant-tooltip-arrow{--antd-arrow-background-color:#eb2f96;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-red .ant-tooltip-inner{background-color:#f5222d;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-red .ant-tooltip-arrow{--antd-arrow-background-color:#f5222d;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-orange .ant-tooltip-inner{background-color:#fa8c16;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-orange .ant-tooltip-arrow{--antd-arrow-background-color:#fa8c16;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-yellow .ant-tooltip-inner{background-color:#fadb14;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-yellow .ant-tooltip-arrow{--antd-arrow-background-color:#fadb14;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-volcano .ant-tooltip-inner{background-color:#fa541c;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-volcano .ant-tooltip-arrow{--antd-arrow-background-color:#fa541c;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-geekblue .ant-tooltip-inner{background-color:#2f54eb;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-geekblue .ant-tooltip-arrow{--antd-arrow-background-color:#2f54eb;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-lime .ant-tooltip-inner{background-color:#a0d911;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-lime .ant-tooltip-arrow{--antd-arrow-background-color:#a0d911;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-gold .ant-tooltip-inner{background-color:#faad14;}:where(.css-18nm6z4).ant-tooltip.ant-tooltip-gold .ant-tooltip-arrow{--antd-arrow-background-color:#faad14;}:where(.css-18nm6z4).ant-tooltip-rtl{direction:rtl;}:where(.css-18nm6z4).ant-tooltip .ant-tooltip-arrow{position:absolute;z-index:1;display:block;pointer-events:none;width:16px;height:16px;overflow:hidden;}:where(.css-18nm6z4).ant-tooltip .ant-tooltip-arrow::before{position:absolute;bottom:0;inset-inline-start:0;width:16px;height:8px;background:var(--antd-arrow-background-color);clip-path:polygon(1.6568542494923806px 100%, 50% 1.6568542494923806px, 14.34314575050762px 100%, 1.6568542494923806px 100%);clip-path:path('M 0 8 A 4 4 0 0 0 2.82842712474619 6.82842712474619 L 6.585786437626905 3.0710678118654755 A 2 2 0 0 1 9.414213562373096 3.0710678118654755 L 13.17157287525381 6.82842712474619 A 4 4 0 0 0 16 8 Z');content:"";}:where(.css-18nm6z4).ant-tooltip .ant-tooltip-arrow::after{content:"";position:absolute;width:8.970562748477143px;height:8.970562748477143px;bottom:0;inset-inline:0;margin:auto;border-radius:0 0 2px 0;transform:translateY(50%) rotate(-135deg);box-shadow:2px 2px 5px rgba(0, 0, 0, 0.05);z-index:0;background:transparent;}:where(.css-18nm6z4).ant-tooltip .ant-tooltip-arrow:before{background:var(--antd-arrow-background-color);}:where(.css-18nm6z4).ant-tooltip-placement-top>.ant-tooltip-arrow,:where(.css-18nm6z4).ant-tooltip-placement-topLeft>.ant-tooltip-arrow,:where(.css-18nm6z4).ant-tooltip-placement-topRight>.ant-tooltip-arrow{bottom:0;transform:translateY(100%) rotate(180deg);}:where(.css-18nm6z4).ant-tooltip-placement-top>.ant-tooltip-arrow{left:50%;transform:translateX(-50%) translateY(100%) rotate(180deg);}:where(.css-18nm6z4).ant-tooltip-placement-topLeft{--arrow-offset-horizontal:12px;}:where(.css-18nm6z4).ant-tooltip-placement-topLeft >.ant-tooltip-arrow{left:12px;}:where(.css-18nm6z4).ant-tooltip-placement-topRight{--arrow-offset-horizontal:calc(100% - 12px);}:where(.css-18nm6z4).ant-tooltip-placement-topRight >.ant-tooltip-arrow{right:12px;}:where(.css-18nm6z4).ant-tooltip-placement-bottom>.ant-tooltip-arrow,:where(.css-18nm6z4).ant-tooltip-placement-bottomLeft>.ant-tooltip-arrow,:where(.css-18nm6z4).ant-tooltip-placement-bottomRight>.ant-tooltip-arrow{top:0;transform:translateY(-100%);}:where(.css-18nm6z4).ant-tooltip-placement-bottom>.ant-tooltip-arrow{left:50%;transform:translateX(-50%) translateY(-100%);}:where(.css-18nm6z4).ant-tooltip-placement-bottomLeft{--arrow-offset-horizontal:12px;}:where(.css-18nm6z4).ant-tooltip-placement-bottomLeft >.ant-tooltip-arrow{left:12px;}:where(.css-18nm6z4).ant-tooltip-placement-bottomRight{--arrow-offset-horizontal:calc(100% - 12px);}:where(.css-18nm6z4).ant-tooltip-placement-bottomRight >.ant-tooltip-arrow{right:12px;}:where(.css-18nm6z4).ant-tooltip-placement-left>.ant-tooltip-arrow,:where(.css-18nm6z4).ant-tooltip-placement-leftTop>.ant-tooltip-arrow,:where(.css-18nm6z4).ant-tooltip-placement-leftBottom>.ant-tooltip-arrow{right:0;transform:translateX(100%) rotate(90deg);}:where(.css-18nm6z4).ant-tooltip-placement-left>.ant-tooltip-arrow{top:50%;transform:translateY(-50%) translateX(100%) rotate(90deg);}:where(.css-18nm6z4).ant-tooltip-placement-leftTop>.ant-tooltip-arrow{top:8px;}:where(.css-18nm6z4).ant-tooltip-placement-leftBottom>.ant-tooltip-arrow{bottom:8px;}:where(.css-18nm6z4).ant-tooltip-placement-right>.ant-tooltip-arrow,:where(.css-18nm6z4).ant-tooltip-placement-rightTop>.ant-tooltip-arrow,:where(.css-18nm6z4).ant-tooltip-placement-rightBottom>.ant-tooltip-arrow{left:0;transform:translateX(-100%) rotate(-90deg);}:where(.css-18nm6z4).ant-tooltip-placement-right>.ant-tooltip-arrow{top:50%;transform:translateY(-50%) translateX(-100%) rotate(-90deg);}:where(.css-18nm6z4).ant-tooltip-placement-rightTop>.ant-tooltip-arrow{top:8px;}:where(.css-18nm6z4).ant-tooltip-placement-rightBottom>.ant-tooltip-arrow{bottom:8px;}:where(.css-18nm6z4).ant-tooltip-pure{position:relative;max-width:none;margin:16px;}:where(.css-18nm6z4).ant-zoom-big-fast-enter,:where(.css-18nm6z4).ant-zoom-big-fast-appear{animation-duration:0.1s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-zoom-big-fast-leave{animation-duration:0.1s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-18nm6z4).ant-zoom-big-fast-enter.ant-zoom-big-fast-enter-active,:where(.css-18nm6z4).ant-zoom-big-fast-appear.ant-zoom-big-fast-appear-active{animation-name:css-18nm6z4-antZoomBigIn;animation-play-state:running;}:where(.css-18nm6z4).ant-zoom-big-fast-leave.ant-zoom-big-fast-leave-active{animation-name:css-18nm6z4-antZoomBigOut;animation-play-state:running;pointer-events:none;}:where(.css-18nm6z4).ant-zoom-big-fast-enter,:where(.css-18nm6z4).ant-zoom-big-fast-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(0.08, 0.82, 0.17, 1);}:where(.css-18nm6z4).ant-zoom-big-fast-enter-prepare,:where(.css-18nm6z4).ant-zoom-big-fast-appear-prepare{transform:none;}:where(.css-18nm6z4).ant-zoom-big-fast-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}:where(.css-18nm6z4).ant-drawer{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;font-size:14px;box-sizing:border-box;}:where(.css-18nm6z4).ant-drawer::before,:where(.css-18nm6z4).ant-drawer::after{box-sizing:border-box;}:where(.css-18nm6z4).ant-drawer [class^="ant-drawer"],:where(.css-18nm6z4).ant-drawer [class*=" ant-drawer"]{box-sizing:border-box;}:where(.css-18nm6z4).ant-drawer [class^="ant-drawer"]::before,:where(.css-18nm6z4).ant-drawer [class*=" ant-drawer"]::before,:where(.css-18nm6z4).ant-drawer [class^="ant-drawer"]::after,:where(.css-18nm6z4).ant-drawer [class*=" ant-drawer"]::after{box-sizing:border-box;}:where(.css-18nm6z4).ant-drawer{position:fixed;inset:0;z-index:1000;pointer-events:none;color:rgba(0,0,0,0.88);}:where(.css-18nm6z4).ant-drawer-pure{position:relative;background:#FCFCFC;display:flex;flex-direction:column;}:where(.css-18nm6z4).ant-drawer-pure.ant-drawer-left{box-shadow:6px 0 16px 0 rgba(0, 0, 0, 0.08),3px 0 6px -4px rgba(0, 0, 0, 0.12),9px 0 28px 8px rgba(0, 0, 0, 0.05);}:where(.css-18nm6z4).ant-drawer-pure.ant-drawer-right{box-shadow:-6px 0 16px 0 rgba(0, 0, 0, 0.08),-3px 0 6px -4px rgba(0, 0, 0, 0.12),-9px 0 28px 8px rgba(0, 0, 0, 0.05);}:where(.css-18nm6z4).ant-drawer-pure.ant-drawer-top{box-shadow:0 6px 16px 0 rgba(0, 0, 0, 0.08),0 3px 6px -4px rgba(0, 0, 0, 0.12),0 9px 28px 8px rgba(0, 0, 0, 0.05);}:where(.css-18nm6z4).ant-drawer-pure.ant-drawer-bottom{box-shadow:0 -6px 16px 0 rgba(0, 0, 0, 0.08),0 -3px 6px -4px rgba(0, 0, 0, 0.12),0 -9px 28px 8px rgba(0, 0, 0, 0.05);}:where(.css-18nm6z4).ant-drawer-inline{position:absolute;}:where(.css-18nm6z4).ant-drawer .ant-drawer-mask{position:absolute;inset:0;z-index:1000;background:rgba(0,0,0,0.45);pointer-events:auto;}:where(.css-18nm6z4).ant-drawer .ant-drawer-content-wrapper{position:absolute;z-index:1000;max-width:100vw;transition:all 0.3s;}:where(.css-18nm6z4).ant-drawer .ant-drawer-content-wrapper-hidden{display:none;}:where(.css-18nm6z4).ant-drawer-left>.ant-drawer-content-wrapper{top:0;bottom:0;left:0;box-shadow:6px 0 16px 0 rgba(0, 0, 0, 0.08),3px 0 6px -4px rgba(0, 0, 0, 0.12),9px 0 28px 8px rgba(0, 0, 0, 0.05);}:where(.css-18nm6z4).ant-drawer-right>.ant-drawer-content-wrapper{top:0;right:0;bottom:0;box-shadow:-6px 0 16px 0 rgba(0, 0, 0, 0.08),-3px 0 6px -4px rgba(0, 0, 0, 0.12),-9px 0 28px 8px rgba(0, 0, 0, 0.05);}:where(.css-18nm6z4).ant-drawer-top>.ant-drawer-content-wrapper{top:0;inset-inline:0;box-shadow:0 6px 16px 0 rgba(0, 0, 0, 0.08),0 3px 6px -4px rgba(0, 0, 0, 0.12),0 9px 28px 8px rgba(0, 0, 0, 0.05);}:where(.css-18nm6z4).ant-drawer-bottom>.ant-drawer-content-wrapper{bottom:0;inset-inline:0;box-shadow:0 -6px 16px 0 rgba(0, 0, 0, 0.08),0 -3px 6px -4px rgba(0, 0, 0, 0.12),0 -9px 28px 8px rgba(0, 0, 0, 0.05);}:where(.css-18nm6z4).ant-drawer .ant-drawer-content{display:flex;flex-direction:column;width:100%;height:100%;overflow:auto;background:#FCFCFC;pointer-events:auto;}:where(.css-18nm6z4).ant-drawer .ant-drawer-header{display:flex;flex:0;align-items:center;padding:16px 24px;font-size:16px;line-height:1.5;border-bottom:1px solid rgba(5,5,5,0.06);}:where(.css-18nm6z4).ant-drawer .ant-drawer-header-title{display:flex;flex:1;align-items:center;min-width:0;min-height:0;}:where(.css-18nm6z4).ant-drawer .ant-drawer-extra{flex:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-close{display:inline-flex;width:24px;height:24px;border-radius:4px;justify-content:center;align-items:center;color:rgba(0,0,0,0.45);font-weight:600;font-size:16px;font-style:normal;line-height:1;text-align:center;text-transform:none;text-decoration:none;background:transparent;border:0;cursor:pointer;transition:all 0.2s;text-rendering:auto;}:where(.css-18nm6z4).ant-drawer .ant-drawer-close.ant-drawer-close-end{margin-inline-start:8px;}:where(.css-18nm6z4).ant-drawer .ant-drawer-close:not(.ant-drawer-close-end){margin-inline-end:8px;}:where(.css-18nm6z4).ant-drawer .ant-drawer-close:hover{color:rgba(0,0,0,0.88);background-color:rgba(0,0,0,0.06);text-decoration:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-close:active{background-color:rgba(0,0,0,0.15);}:where(.css-18nm6z4).ant-drawer .ant-drawer-close:focus-visible{outline:3px solid #0049DF;outline-offset:1px;transition:outline-offset 0s,outline 0s;}:where(.css-18nm6z4).ant-drawer .ant-drawer-title{flex:1;margin:0;font-weight:600;font-size:16px;line-height:1.5;}:where(.css-18nm6z4).ant-drawer .ant-drawer-body{flex:1;min-width:0;min-height:0;padding:24px;overflow:auto;}:where(.css-18nm6z4).ant-drawer .ant-drawer-body .ant-drawer-body-skeleton{width:100%;height:100%;display:flex;justify-content:center;}:where(.css-18nm6z4).ant-drawer .ant-drawer-footer{flex-shrink:0;padding:8px 16px;border-top:1px solid rgba(5,5,5,0.06);}:where(.css-18nm6z4).ant-drawer-rtl{direction:rtl;}:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-enter-start,:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-appear-start,:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-leave-start{transition:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-appear-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-leave-active{transition:all 0.3s;}:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-enter,:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-appear{opacity:0;}:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-appear-active{opacity:1;}:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-leave{opacity:1;}:where(.css-18nm6z4).ant-drawer .ant-drawer-mask-motion-leave-active{opacity:0;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-enter-start,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-appear-start,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-leave-start{transition:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-appear-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-leave-active{transition:all 0.3s;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-enter,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-appear{opacity:0.7;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-appear-active{opacity:1;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-leave{opacity:1;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-leave-active{opacity:0.7;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-enter,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-appear{transform:translateX(-100%);}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-appear-active{transform:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-leave{transform:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-left-leave-active{transform:translateX(-100%);}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-enter-start,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-appear-start,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-leave-start{transition:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-appear-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-leave-active{transition:all 0.3s;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-enter,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-appear{opacity:0.7;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-appear-active{opacity:1;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-leave{opacity:1;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-leave-active{opacity:0.7;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-enter,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-appear{transform:translateX(100%);}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-appear-active{transform:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-leave{transform:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-right-leave-active{transform:translateX(100%);}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-enter-start,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-appear-start,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-leave-start{transition:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-appear-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-leave-active{transition:all 0.3s;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-enter,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-appear{opacity:0.7;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-appear-active{opacity:1;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-leave{opacity:1;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-leave-active{opacity:0.7;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-enter,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-appear{transform:translateY(-100%);}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-appear-active{transform:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-leave{transform:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-top-leave-active{transform:translateY(-100%);}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-enter-start,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-appear-start,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-leave-start{transition:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-appear-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-leave-active{transition:all 0.3s;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-enter,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-appear{opacity:0.7;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-appear-active{opacity:1;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-leave{opacity:1;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-leave-active{opacity:0.7;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-enter,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-appear{transform:translateY(100%);}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-enter-active,:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-appear-active{transform:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-leave{transform:none;}:where(.css-18nm6z4).ant-drawer .ant-drawer-panel-motion-bottom-leave-active{transform:translateY(100%);}:where(.css-18nm6z4).ant-btn{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;font-size:14px;box-sizing:border-box;}:where(.css-18nm6z4).ant-btn::before,:where(.css-18nm6z4).ant-btn::after{box-sizing:border-box;}:where(.css-18nm6z4).ant-btn [class^="ant-btn"],:where(.css-18nm6z4).ant-btn [class*=" ant-btn"]{box-sizing:border-box;}:where(.css-18nm6z4).ant-btn [class^="ant-btn"]::before,:where(.css-18nm6z4).ant-btn [class*=" ant-btn"]::before,:where(.css-18nm6z4).ant-btn [class^="ant-btn"]::after,:where(.css-18nm6z4).ant-btn [class*=" ant-btn"]::after{box-sizing:border-box;}:where(.css-18nm6z4).ant-btn{outline:none;position:relative;display:inline-flex;gap:8px;align-items:center;justify-content:center;font-weight:400;white-space:nowrap;text-align:center;background-image:none;background:transparent;border:1px solid transparent;cursor:pointer;transition:all 0.2s cubic-bezier(0.645, 0.045, 0.355, 1);user-select:none;touch-action:manipulation;color:rgba(0,0,0,0.88);}:where(.css-18nm6z4).ant-btn:disabled>*{pointer-events:none;}:where(.css-18nm6z4).ant-btn .ant-btn-icon>svg{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}:where(.css-18nm6z4).ant-btn .ant-btn-icon>svg >*{line-height:1;}:where(.css-18nm6z4).ant-btn .ant-btn-icon>svg svg{display:inline-block;}:where(.css-18nm6z4).ant-btn >a{color:currentColor;}:where(.css-18nm6z4).ant-btn:not(:disabled):focus-visible{outline:3px solid #0049DF;outline-offset:1px;transition:outline-offset 0s,outline 0s;}:where(.css-18nm6z4).ant-btn.ant-btn-two-chinese-chars::first-letter{letter-spacing:0.34em;}:where(.css-18nm6z4).ant-btn.ant-btn-two-chinese-chars>*:not(.anticon){margin-inline-end:-0.34em;letter-spacing:0.34em;}:where(.css-18nm6z4).ant-btn.ant-btn-icon-only{padding-inline:0;}:where(.css-18nm6z4).ant-btn.ant-btn-icon-only.ant-btn-compact-item{flex:none;}:where(.css-18nm6z4).ant-btn.ant-btn-loading{opacity:0.65;cursor:default;}:where(.css-18nm6z4).ant-btn .ant-btn-loading-icon{transition:width 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),opacity 0.3s cubic-bezier(0.645, 0.045, 0.355, 1),margin 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}:where(.css-18nm6z4).ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-appear-start,:where(.css-18nm6z4).ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-enter-start{margin-inline-end:-8px;}:where(.css-18nm6z4).ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-appear-active,:where(.css-18nm6z4).ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-enter-active{margin-inline-end:0;}:where(.css-18nm6z4).ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-leave-start{margin-inline-end:0;}:where(.css-18nm6z4).ant-btn:not(.ant-btn-icon-end) .ant-btn-loading-icon-motion-leave-active{margin-inline-end:-8px;}:where(.css-18nm6z4).ant-btn-icon-end{flex-direction:row-reverse;}:where(.css-18nm6z4).ant-btn-icon-end .ant-btn-loading-icon-motion-appear-start,:where(.css-18nm6z4).ant-btn-icon-end .ant-btn-loading-icon-motion-enter-start{margin-inline-start:-8px;}:where(.css-18nm6z4).ant-btn-icon-end .ant-btn-loading-icon-motion-appear-active,:where(.css-18nm6z4).ant-btn-icon-end .ant-btn-loading-icon-motion-enter-active{margin-inline-start:0;}:where(.css-18nm6z4).ant-btn-icon-end .ant-btn-loading-icon-motion-leave-start{margin-inline-start:0;}:where(.css-18nm6z4).ant-btn-icon-end .ant-btn-loading-icon-motion-leave-active{margin-inline-start:-8px;}:where(.css-18nm6z4).ant-btn{font-size:14px;height:32px;padding:0px 15px;border-radius:16px;}:where(.css-18nm6z4).ant-btn.ant-btn-icon-only{width:32px;}:where(.css-18nm6z4).ant-btn.ant-btn-icon-only .anticon{font-size:inherit;}:where(.css-18nm6z4).ant-btn.ant-btn-circle.ant-btn{min-width:32px;padding-inline:0;border-radius:50%;}:where(.css-18nm6z4).ant-btn.ant-btn-round.ant-btn{border-radius:32px;}:where(.css-18nm6z4).ant-btn.ant-btn-round.ant-btn:not(.ant-btn-icon-only){padding-inline:15px;}:where(.css-18nm6z4).ant-btn-sm{font-size:14px;height:24px;padding:0px 7px;border-radius:4px;}:where(.css-18nm6z4).ant-btn-sm.ant-btn-icon-only{width:24px;}:where(.css-18nm6z4).ant-btn-sm.ant-btn-icon-only .anticon{font-size:inherit;}:where(.css-18nm6z4).ant-btn.ant-btn-circle.ant-btn-sm{min-width:24px;padding-inline:0;border-radius:50%;}:where(.css-18nm6z4).ant-btn.ant-btn-round.ant-btn-sm{border-radius:24px;}:where(.css-18nm6z4).ant-btn.ant-btn-round.ant-btn-sm:not(.ant-btn-icon-only){padding-inline:7px;}:where(.css-18nm6z4).ant-btn-lg{font-size:16px;height:48px;padding:0px 15px;border-radius:24px;}:where(.css-18nm6z4).ant-btn-lg.ant-btn-icon-only{width:48px;}:where(.css-18nm6z4).ant-btn-lg.ant-btn-icon-only .anticon{font-size:inherit;}:where(.css-18nm6z4).ant-btn.ant-btn-circle.ant-btn-lg{min-width:48px;padding-inline:0;border-radius:50%;}:where(.css-18nm6z4).ant-btn.ant-btn-round.ant-btn-lg{border-radius:48px;}:where(.css-18nm6z4).ant-btn.ant-btn-round.ant-btn-lg:not(.ant-btn-icon-only){padding-inline:15px;}:where(.css-18nm6z4).ant-btn.ant-btn-block{width:100%;}:where(.css-18nm6z4).ant-btn-color-default{color:rgba(0,0,0,0.88);box-shadow:0 2px 0 rgba(0,0,0,0.02);}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-solid{color:#fff;background:rgb(0,0,0);}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{color:#fff;background:rgba(0,0,0,0.75);}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{color:#fff;background:rgba(0,0,0,0.95);}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-filled{box-shadow:none;background:rgba(0,0,0,0.04);}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:rgba(0,0,0,0.88);background:rgba(0,0,0,0.06);}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:rgba(0,0,0,0.88);background:rgba(0,0,0,0.15);}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-background-ghost{color:#ffffff;background:transparent;border-color:#ffffff;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):hover{background:transparent;}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):active{background:transparent;}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-background-ghost:disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);border-color:#d9d9d9;}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-link{color:rgba(0,0,0,0.88);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#69b1ff;background:transparent;}:where(.css-18nm6z4).ant-btn-color-default.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#0958d9;}:where(.css-18nm6z4).ant-btn-color-primary{color:#2563eb;box-shadow:0 2px 0 rgba(5,122,255,0.06);}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-dashed{border-color:#2563eb;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#4f8af7;border-color:#6180F9;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#1647c4;border-color:#0049DF;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-filled{box-shadow:none;background:#f0f7ff;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#2563eb;background:#cce3ff;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#2563eb;background:#0049DF;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-text{color:#2563eb;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#4f8af7;background:#f0f7ff;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#1647c4;background:#0049DF;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-link{color:#2563eb;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#4f8af7;background:transparent;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#1647c4;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-background-ghost{color:#2563eb;background:transparent;border-color:#2563eb;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):hover{background:transparent;color:#6180F9;border-color:#6180F9;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):active{background:transparent;color:#0049DF;border-color:#0049DF;}:where(.css-18nm6z4).ant-btn-color-primary.ant-btn-background-ghost:disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);border-color:#d9d9d9;}:where(.css-18nm6z4).ant-btn-color-dangerous{color:#ff4d4f;box-shadow:0 2px 0 rgba(255,38,5,0.06);}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-solid{color:#fff;background:#ff4d4f;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#ff7875;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#d9363e;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-dashed{border-color:#ff4d4f;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#ff7875;border-color:#ffa39e;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#d9363e;border-color:#d9363e;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-filled{box-shadow:none;background:#fff2f0;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#ff4d4f;background:#ffdfdc;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#ff4d4f;background:#ffccc7;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-text{color:#ff4d4f;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#ff7875;background:#fff2f0;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#ff7875;background:#ffccc7;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-link{color:#ff4d4f;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#ff7875;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#d9363e;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-background-ghost{color:#ff4d4f;background:transparent;border-color:#ff4d4f;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):hover{background:transparent;color:#ff7875;border-color:#ff7875;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):active{background:transparent;color:#d9363e;border-color:#d9363e;}:where(.css-18nm6z4).ant-btn-color-dangerous.ant-btn-background-ghost:disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);border-color:#d9d9d9;}:where(.css-18nm6z4).ant-btn-color-link.ant-btn-variant-link{color:#1677ff;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-link.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-link.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-link.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#69b1ff;}:where(.css-18nm6z4).ant-btn-color-link.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#0958d9;}:where(.css-18nm6z4).ant-btn-color-link.ant-btn-background-ghost{color:#1677ff;background:transparent;border-color:#1677ff;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-link.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):hover{background:transparent;color:#69b1ff;border-color:#69b1ff;}:where(.css-18nm6z4).ant-btn-color-link.ant-btn-background-ghost:not(:disabled):not(.ant-btn-disabled):active{background:transparent;color:#0958d9;border-color:#0958d9;}:where(.css-18nm6z4).ant-btn-color-link.ant-btn-background-ghost:disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);border-color:#d9d9d9;}:where(.css-18nm6z4).ant-btn-color-blue{color:#1677ff;box-shadow:0 2px 0 rgba(5,145,255,0.1);}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-solid{color:#fff;background:#1677ff;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#4096ff;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#0958d9;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-dashed{border-color:#1677ff;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#4096ff;border-color:#4096ff;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#0958d9;border-color:#0958d9;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-filled{box-shadow:none;background:#e6f4ff;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#1677ff;background:#bae0ff;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#1677ff;background:#91caff;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-link{color:#1677ff;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#4096ff;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#0958d9;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-text{color:#1677ff;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#4096ff;background:#e6f4ff;}:where(.css-18nm6z4).ant-btn-color-blue.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#0958d9;background:#91caff;}:where(.css-18nm6z4).ant-btn-color-purple{color:#722ed1;box-shadow:0 2px 0 rgba(155,5,255,0.06);}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-solid{color:#fff;background:#722ed1;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#9254de;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#531dab;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-dashed{border-color:#722ed1;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#9254de;border-color:#9254de;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#531dab;border-color:#531dab;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-filled{box-shadow:none;background:#f9f0ff;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#722ed1;background:#efdbff;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#722ed1;background:#d3adf7;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-link{color:#722ed1;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#9254de;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#531dab;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-text{color:#722ed1;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#9254de;background:#f9f0ff;}:where(.css-18nm6z4).ant-btn-color-purple.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#531dab;background:#d3adf7;}:where(.css-18nm6z4).ant-btn-color-cyan{color:#13c2c2;box-shadow:0 2px 0 rgba(5,255,215,0.1);}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-solid{color:#fff;background:#13c2c2;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#36cfc9;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#08979c;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-dashed{border-color:#13c2c2;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#36cfc9;border-color:#36cfc9;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#08979c;border-color:#08979c;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-filled{box-shadow:none;background:#e6fffb;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#13c2c2;background:#b5f5ec;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#13c2c2;background:#87e8de;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-link{color:#13c2c2;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#36cfc9;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#08979c;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-text{color:#13c2c2;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#36cfc9;background:#e6fffb;}:where(.css-18nm6z4).ant-btn-color-cyan.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#08979c;background:#87e8de;}:where(.css-18nm6z4).ant-btn-color-green{color:#52c41a;box-shadow:0 2px 0 rgba(142,255,30,0.08);}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-solid{color:#fff;background:#52c41a;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#73d13d;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#389e0d;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-dashed{border-color:#52c41a;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#73d13d;border-color:#73d13d;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#389e0d;border-color:#389e0d;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-filled{box-shadow:none;background:#f6ffed;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#52c41a;background:#d9f7be;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#52c41a;background:#b7eb8f;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-link{color:#52c41a;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#73d13d;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#389e0d;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-text{color:#52c41a;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#73d13d;background:#f6ffed;}:where(.css-18nm6z4).ant-btn-color-green.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#389e0d;background:#b7eb8f;}:where(.css-18nm6z4).ant-btn-color-magenta{color:#eb2f96;box-shadow:0 2px 0 rgba(255,5,105,0.06);}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-solid{color:#fff;background:#eb2f96;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#f759ab;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#c41d7f;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-dashed{border-color:#eb2f96;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#f759ab;border-color:#f759ab;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#c41d7f;border-color:#c41d7f;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-filled{box-shadow:none;background:#fff0f6;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#eb2f96;background:#ffd6e7;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#eb2f96;background:#ffadd2;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-link{color:#eb2f96;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#f759ab;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#c41d7f;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-text{color:#eb2f96;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#f759ab;background:#fff0f6;}:where(.css-18nm6z4).ant-btn-color-magenta.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#c41d7f;background:#ffadd2;}:where(.css-18nm6z4).ant-btn-color-pink{color:#eb2f96;box-shadow:0 2px 0 rgba(255,5,105,0.06);}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-solid{color:#fff;background:#eb2f96;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#f759ab;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#c41d7f;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-dashed{border-color:#eb2f96;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#f759ab;border-color:#f759ab;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#c41d7f;border-color:#c41d7f;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-filled{box-shadow:none;background:#fff0f6;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#eb2f96;background:#ffd6e7;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#eb2f96;background:#ffadd2;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-link{color:#eb2f96;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#f759ab;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#c41d7f;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-text{color:#eb2f96;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#f759ab;background:#fff0f6;}:where(.css-18nm6z4).ant-btn-color-pink.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#c41d7f;background:#ffadd2;}:where(.css-18nm6z4).ant-btn-color-red{color:#f5222d;box-shadow:0 2px 0 rgba(255,22,5,0.06);}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-solid{color:#fff;background:#f5222d;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#ff4d4f;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#cf1322;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-dashed{border-color:#f5222d;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#ff4d4f;border-color:#ff4d4f;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#cf1322;border-color:#cf1322;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-filled{box-shadow:none;background:#fff1f0;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#f5222d;background:#ffccc7;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#f5222d;background:#ffa39e;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-link{color:#f5222d;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#ff4d4f;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#cf1322;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-text{color:#f5222d;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#ff4d4f;background:#fff1f0;}:where(.css-18nm6z4).ant-btn-color-red.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#cf1322;background:#ffa39e;}:where(.css-18nm6z4).ant-btn-color-orange{color:#fa8c16;box-shadow:0 2px 0 rgba(255,175,5,0.1);}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-solid{color:#fff;background:#fa8c16;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#ffa940;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#d46b08;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-dashed{border-color:#fa8c16;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#ffa940;border-color:#ffa940;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#d46b08;border-color:#d46b08;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-filled{box-shadow:none;background:#fff7e6;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#fa8c16;background:#ffe7ba;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#fa8c16;background:#ffd591;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-link{color:#fa8c16;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#ffa940;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#d46b08;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-text{color:#fa8c16;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#ffa940;background:#fff7e6;}:where(.css-18nm6z4).ant-btn-color-orange.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#d46b08;background:#ffd591;}:where(.css-18nm6z4).ant-btn-color-yellow{color:#fadb14;box-shadow:0 2px 0 rgba(245,255,5,0.1);}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-solid{color:#fff;background:#fadb14;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#ffec3d;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#d4b106;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-dashed{border-color:#fadb14;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#ffec3d;border-color:#ffec3d;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#d4b106;border-color:#d4b106;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-filled{box-shadow:none;background:#feffe6;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#fadb14;background:#ffffb8;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#fadb14;background:#fffb8f;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-link{color:#fadb14;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#ffec3d;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#d4b106;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-text{color:#fadb14;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#ffec3d;background:#feffe6;}:where(.css-18nm6z4).ant-btn-color-yellow.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#d4b106;background:#fffb8f;}:where(.css-18nm6z4).ant-btn-color-volcano{color:#fa541c;box-shadow:0 2px 0 rgba(255,125,25,0.1);}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-solid{color:#fff;background:#fa541c;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#ff7a45;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#d4380d;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-dashed{border-color:#fa541c;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#ff7a45;border-color:#ff7a45;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#d4380d;border-color:#d4380d;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-filled{box-shadow:none;background:#fff2e8;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#fa541c;background:#ffd8bf;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#fa541c;background:#ffbb96;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-link{color:#fa541c;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#ff7a45;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#d4380d;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-text{color:#fa541c;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#ff7a45;background:#fff2e8;}:where(.css-18nm6z4).ant-btn-color-volcano.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#d4380d;background:#ffbb96;}:where(.css-18nm6z4).ant-btn-color-geekblue{color:#2f54eb;box-shadow:0 2px 0 rgba(5,88,255,0.06);}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-solid{color:#fff;background:#2f54eb;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#597ef7;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#1d39c4;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-dashed{border-color:#2f54eb;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#597ef7;border-color:#597ef7;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#1d39c4;border-color:#1d39c4;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-filled{box-shadow:none;background:#f0f5ff;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#2f54eb;background:#d6e4ff;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#2f54eb;background:#adc6ff;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-link{color:#2f54eb;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#597ef7;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#1d39c4;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-text{color:#2f54eb;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#597ef7;background:#f0f5ff;}:where(.css-18nm6z4).ant-btn-color-geekblue.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#1d39c4;background:#adc6ff;}:where(.css-18nm6z4).ant-btn-color-lime{color:#a0d911;box-shadow:0 2px 0 rgba(225,255,5,0.1);}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-solid{color:#fff;background:#a0d911;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#bae637;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#7cb305;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-dashed{border-color:#a0d911;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#bae637;border-color:#bae637;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#7cb305;border-color:#7cb305;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-filled{box-shadow:none;background:#fcffe6;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#a0d911;background:#f4ffb8;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#a0d911;background:#eaff8f;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-link{color:#a0d911;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#bae637;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#7cb305;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-text{color:#a0d911;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#bae637;background:#fcffe6;}:where(.css-18nm6z4).ant-btn-color-lime.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#7cb305;background:#eaff8f;}:where(.css-18nm6z4).ant-btn-color-gold{color:#faad14;box-shadow:0 2px 0 rgba(255,215,5,0.1);}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-solid{color:#fff;background:#faad14;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#ffc53d;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#d48806;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-dashed{border-color:#faad14;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#ffc53d;border-color:#ffc53d;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#d48806;border-color:#d48806;background:#ffffff;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-dashed{border-style:dashed;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-filled{box-shadow:none;background:#fffbe6;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-filled:disabled,:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-filled.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):hover{color:#faad14;background:#fff1b8;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-filled:not(:disabled):not(.ant-btn-disabled):active{color:#faad14;background:#ffe58f;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-link{color:#faad14;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#ffc53d;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#d48806;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-text{color:#faad14;box-shadow:none;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:#ffc53d;background:#fffbe6;}:where(.css-18nm6z4).ant-btn-color-gold.ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:#d48806;background:#ffe58f;}:where(.css-18nm6z4).ant-btn-variant-outlined,:where(.css-18nm6z4).ant-btn-variant-dashed{border-color:#d9d9d9;background:#ffffff;}:where(.css-18nm6z4).ant-btn-variant-outlined:disabled,:where(.css-18nm6z4).ant-btn-variant-dashed:disabled,:where(.css-18nm6z4).ant-btn-variant-outlined.ant-btn-disabled,:where(.css-18nm6z4).ant-btn-variant-dashed.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):hover,:where(.css-18nm6z4).ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):hover{color:#6180F9;border-color:#6180F9;background:#ffffff;}:where(.css-18nm6z4).ant-btn-variant-outlined:not(:disabled):not(.ant-btn-disabled):active,:where(.css-18nm6z4).ant-btn-variant-dashed:not(:disabled):not(.ant-btn-disabled):active{color:#0049DF;border-color:#0049DF;background:#ffffff;}:where(.css-18nm6z4).ant-btn-variant-text{color:rgba(0,0,0,0.88);box-shadow:none;}:where(.css-18nm6z4).ant-btn-variant-text:disabled,:where(.css-18nm6z4).ant-btn-variant-text.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):hover{color:rgba(0,0,0,0.88);background:rgba(0,0,0,0.04);}:where(.css-18nm6z4).ant-btn-variant-text:not(:disabled):not(.ant-btn-disabled):active{color:rgba(0,0,0,0.88);background:rgba(0,0,0,0.15);}:where(.css-18nm6z4).ant-btn-variant-solid{color:#fff;background:#2563eb;}:where(.css-18nm6z4).ant-btn-variant-solid:disabled,:where(.css-18nm6z4).ant-btn-variant-solid.ant-btn-disabled{cursor:not-allowed;border-color:#d9d9d9;color:rgba(0,0,0,0.25);background:rgba(0,0,0,0.04);box-shadow:none;}:where(.css-18nm6z4).ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):hover{background:#6180F9;color:#fff;}:where(.css-18nm6z4).ant-btn-variant-solid:not(:disabled):not(.ant-btn-disabled):active{background:#0049DF;color:#fff;}:where(.css-18nm6z4).ant-btn-variant-link{color:#1677ff;box-shadow:none;}:where(.css-18nm6z4).ant-btn-variant-link:disabled,:where(.css-18nm6z4).ant-btn-variant-link.ant-btn-disabled{cursor:not-allowed;color:rgba(0,0,0,0.25);}:where(.css-18nm6z4).ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):hover{color:#69b1ff;background:transparent;}:where(.css-18nm6z4).ant-btn-variant-link:not(:disabled):not(.ant-btn-disabled):active{color:#0958d9;}:where(.css-18nm6z4).ant-btn-group{position:relative;display:inline-flex;}:where(.css-18nm6z4).ant-btn-group >span:not(:last-child),:where(.css-18nm6z4).ant-btn-group >.ant-btn:not(:last-child),:where(.css-18nm6z4).ant-btn-group >span:not(:last-child)>.ant-btn,:where(.css-18nm6z4).ant-btn-group >.ant-btn:not(:last-child)>.ant-btn{border-start-end-radius:0;border-end-end-radius:0;}:where(.css-18nm6z4).ant-btn-group >span:not(:first-child),:where(.css-18nm6z4).ant-btn-group >.ant-btn:not(:first-child){margin-inline-start:-1px;}:where(.css-18nm6z4).ant-btn-group >span:not(:first-child),:where(.css-18nm6z4).ant-btn-group >.ant-btn:not(:first-child),:where(.css-18nm6z4).ant-btn-group >span:not(:first-child)>.ant-btn,:where(.css-18nm6z4).ant-btn-group >.ant-btn:not(:first-child)>.ant-btn{border-start-start-radius:0;border-end-start-radius:0;}:where(.css-18nm6z4).ant-btn-group .ant-btn{position:relative;z-index:1;}:where(.css-18nm6z4).ant-btn-group .ant-btn:hover,:where(.css-18nm6z4).ant-btn-group .ant-btn:focus,:where(.css-18nm6z4).ant-btn-group .ant-btn:active{z-index:2;}:where(.css-18nm6z4).ant-btn-group .ant-btn[disabled]{z-index:0;}:where(.css-18nm6z4).ant-btn-group .ant-btn-icon-only{font-size:14px;}:where(.css-18nm6z4).ant-btn-group >span:not(:last-child):not(:disabled),:where(.css-18nm6z4).ant-btn-group >.ant-btn-primary:not(:last-child):not(:disabled),:where(.css-18nm6z4).ant-btn-group >span:not(:last-child)>.ant-btn-primary:not(:disabled),:where(.css-18nm6z4).ant-btn-group >.ant-btn-primary:not(:last-child)>.ant-btn-primary:not(:disabled){border-inline-end-color:#6180F9;}:where(.css-18nm6z4).ant-btn-group >span:not(:first-child):not(:disabled),:where(.css-18nm6z4).ant-btn-group >.ant-btn-primary:not(:first-child):not(:disabled),:where(.css-18nm6z4).ant-btn-group >span:not(:first-child)>.ant-btn-primary:not(:disabled),:where(.css-18nm6z4).ant-btn-group >.ant-btn-primary:not(:first-child)>.ant-btn-primary:not(:disabled){border-inline-start-color:#6180F9;}:where(.css-18nm6z4).ant-btn-group >span:not(:last-child):not(:disabled),:where(.css-18nm6z4).ant-btn-group >.ant-btn-danger:not(:last-child):not(:disabled),:where(.css-18nm6z4).ant-btn-group >span:not(:last-child)>.ant-btn-danger:not(:disabled),:where(.css-18nm6z4).ant-btn-group >.ant-btn-danger:not(:last-child)>.ant-btn-danger:not(:disabled){border-inline-end-color:#ff7875;}:where(.css-18nm6z4).ant-btn-group >span:not(:first-child):not(:disabled),:where(.css-18nm6z4).ant-btn-group >.ant-btn-danger:not(:first-child):not(:disabled),:where(.css-18nm6z4).ant-btn-group >span:not(:first-child)>.ant-btn-danger:not(:disabled),:where(.css-18nm6z4).ant-btn-group >.ant-btn-danger:not(:first-child)>.ant-btn-danger:not(:disabled){border-inline-start-color:#ff7875;}:where(.css-1xohofr)[class^="ant-anchor"],:where(.css-1xohofr)[class*=" ant-anchor"]{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;font-size:14px;box-sizing:border-box;}:where(.css-1xohofr)[class^="ant-anchor"]::before,:where(.css-1xohofr)[class*=" ant-anchor"]::before,:where(.css-1xohofr)[class^="ant-anchor"]::after,:where(.css-1xohofr)[class*=" ant-anchor"]::after{box-sizing:border-box;}:where(.css-1xohofr)[class^="ant-anchor"] [class^="ant-anchor"],:where(.css-1xohofr)[class*=" ant-anchor"] [class^="ant-anchor"],:where(.css-1xohofr)[class^="ant-anchor"] [class*=" ant-anchor"],:where(.css-1xohofr)[class*=" ant-anchor"] [class*=" ant-anchor"]{box-sizing:border-box;}:where(.css-1xohofr)[class^="ant-anchor"] [class^="ant-anchor"]::before,:where(.css-1xohofr)[class*=" ant-anchor"] [class^="ant-anchor"]::before,:where(.css-1xohofr)[class^="ant-anchor"] [class*=" ant-anchor"]::before,:where(.css-1xohofr)[class*=" ant-anchor"] [class*=" ant-anchor"]::before,:where(.css-1xohofr)[class^="ant-anchor"] [class^="ant-anchor"]::after,:where(.css-1xohofr)[class*=" ant-anchor"] [class^="ant-anchor"]::after,:where(.css-1xohofr)[class^="ant-anchor"] [class*=" ant-anchor"]::after,:where(.css-1xohofr)[class*=" ant-anchor"] [class*=" ant-anchor"]::after{box-sizing:border-box;}:where(.css-1xohofr).ant-anchor-wrapper{margin-block-start:-4px;padding-block-start:4px;}:where(.css-1xohofr).ant-anchor-wrapper .ant-anchor{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,0.88);font-size:14px;line-height:1.5714285714285714;list-style:none;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;position:relative;padding-inline-start:2px;}:where(.css-1xohofr).ant-anchor-wrapper .ant-anchor .ant-anchor-link{padding-block:4px;padding-inline:16px 0;}:where(.css-1xohofr).ant-anchor-wrapper .ant-anchor .ant-anchor-link-title{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;position:relative;display:block;margin-block-end:3px;color:rgba(0,0,0,0.88);transition:all 0.3s;}:where(.css-1xohofr).ant-anchor-wrapper .ant-anchor .ant-anchor-link-title:only-child{margin-block-end:0;}:where(.css-1xohofr).ant-anchor-wrapper .ant-anchor .ant-anchor-link-active>.ant-anchor-link-title{color:#2563eb;}:where(.css-1xohofr).ant-anchor-wrapper .ant-anchor .ant-anchor-link .ant-anchor-link{padding-block:2px;}:where(.css-1xohofr).ant-anchor-wrapper:not(.ant-anchor-wrapper-horizontal) .ant-anchor::before{position:absolute;inset-inline-start:0;top:0;height:100%;border-inline-start:2px solid rgba(5,5,5,0.06);content:" ";}:where(.css-1xohofr).ant-anchor-wrapper:not(.ant-anchor-wrapper-horizontal) .ant-anchor .ant-anchor-ink{position:absolute;inset-inline-start:0;display:none;transform:translateY(-50%);transition:top 0.3s ease-in-out;width:2px;background-color:#2563eb;}:where(.css-1xohofr).ant-anchor-wrapper:not(.ant-anchor-wrapper-horizontal) .ant-anchor .ant-anchor-ink.ant-anchor-ink-visible{display:inline-block;}:where(.css-1xohofr).ant-anchor-wrapper .ant-anchor-fixed .ant-anchor-ink .ant-anchor-ink{display:none;}:where(.css-1xohofr).ant-anchor-wrapper-horizontal{position:relative;}:where(.css-1xohofr).ant-anchor-wrapper-horizontal::before{position:absolute;left:0;right:0;bottom:0;border-bottom:1px solid rgba(5,5,5,0.06);content:" ";}:where(.css-1xohofr).ant-anchor-wrapper-horizontal .ant-anchor{overflow-x:scroll;position:relative;display:flex;scrollbar-width:none;}:where(.css-1xohofr).ant-anchor-wrapper-horizontal .ant-anchor::-webkit-scrollbar{display:none;}:where(.css-1xohofr).ant-anchor-wrapper-horizontal .ant-anchor .ant-anchor-link:first-of-type{padding-inline:0;}:where(.css-1xohofr).ant-anchor-wrapper-horizontal .ant-anchor .ant-anchor-ink{position:absolute;bottom:0;transition:left 0.3s ease-in-out,width 0.3s ease-in-out;height:2px;background-color:#2563eb;}:where(.css-1xohofr)[class^="ant-modal"],:where(.css-1xohofr)[class*=" ant-modal"]{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;font-size:14px;box-sizing:border-box;}:where(.css-1xohofr)[class^="ant-modal"]::before,:where(.css-1xohofr)[class*=" ant-modal"]::before,:where(.css-1xohofr)[class^="ant-modal"]::after,:where(.css-1xohofr)[class*=" ant-modal"]::after{box-sizing:border-box;}:where(.css-1xohofr)[class^="ant-modal"] [class^="ant-modal"],:where(.css-1xohofr)[class*=" ant-modal"] [class^="ant-modal"],:where(.css-1xohofr)[class^="ant-modal"] [class*=" ant-modal"],:where(.css-1xohofr)[class*=" ant-modal"] [class*=" ant-modal"]{box-sizing:border-box;}:where(.css-1xohofr)[class^="ant-modal"] [class^="ant-modal"]::before,:where(.css-1xohofr)[class*=" ant-modal"] [class^="ant-modal"]::before,:where(.css-1xohofr)[class^="ant-modal"] [class*=" ant-modal"]::before,:where(.css-1xohofr)[class*=" ant-modal"] [class*=" ant-modal"]::before,:where(.css-1xohofr)[class^="ant-modal"] [class^="ant-modal"]::after,:where(.css-1xohofr)[class*=" ant-modal"] [class^="ant-modal"]::after,:where(.css-1xohofr)[class^="ant-modal"] [class*=" ant-modal"]::after,:where(.css-1xohofr)[class*=" ant-modal"] [class*=" ant-modal"]::after{box-sizing:border-box;}:where(.css-1xohofr).ant-modal-root .ant-modal-wrap-rtl{direction:rtl;}:where(.css-1xohofr).ant-modal-root .ant-modal-centered{text-align:center;}:where(.css-1xohofr).ant-modal-root .ant-modal-centered::before{display:inline-block;width:0;height:100%;vertical-align:middle;content:"";}:where(.css-1xohofr).ant-modal-root .ant-modal-centered .ant-modal{top:0;display:inline-block;padding-bottom:0;text-align:start;vertical-align:middle;}@media (max-width: 767px){:where(.css-1xohofr).ant-modal-root .ant-modal{max-width:calc(100vw - 16px);margin:8px auto;}:where(.css-1xohofr).ant-modal-root .ant-modal-centered .ant-modal{flex:1;}}:where(.css-1xohofr).ant-modal{box-sizing:border-box;margin:0 auto;padding:0;color:rgba(0,0,0,0.88);font-size:14px;line-height:1.5714285714285714;list-style:none;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;pointer-events:none;position:relative;top:100px;width:auto;max-width:calc(100vw - 32px);padding-bottom:24px;}:where(.css-1xohofr).ant-modal .ant-modal-title{margin:0;color:rgba(0,0,0,0.88);font-weight:600;font-size:16px;line-height:1.5;word-wrap:break-word;}:where(.css-1xohofr).ant-modal .ant-modal-content{position:relative;background-color:#ffffff;background-clip:padding-box;border:0;border-radius:8px;box-shadow:0 6px 16px 0 rgba(0, 0, 0, 0.08),0 3px 6px -4px rgba(0, 0, 0, 0.12),0 9px 28px 8px rgba(0, 0, 0, 0.05);pointer-events:auto;padding:20px 24px;}:where(.css-1xohofr).ant-modal .ant-modal-close{position:absolute;top:12px;inset-inline-end:12px;z-index:1010;padding:0;color:rgba(0,0,0,0.45);font-weight:600;line-height:1;text-decoration:none;background:transparent;border-radius:4px;width:32px;height:32px;border:0;outline:0;cursor:pointer;transition:color 0.2s,background-color 0.2s;}:where(.css-1xohofr).ant-modal .ant-modal-close-x{display:flex;font-size:16px;font-style:normal;line-height:32px;justify-content:center;text-transform:none;text-rendering:auto;}:where(.css-1xohofr).ant-modal .ant-modal-close:disabled{pointer-events:none;}:where(.css-1xohofr).ant-modal .ant-modal-close:hover{color:rgba(0,0,0,0.88);background-color:rgba(0,0,0,0.06);text-decoration:none;}:where(.css-1xohofr).ant-modal .ant-modal-close:active{background-color:rgba(0,0,0,0.15);}:where(.css-1xohofr).ant-modal .ant-modal-close:focus-visible{outline:3px solid #0049DF;outline-offset:1px;transition:outline-offset 0s,outline 0s;}:where(.css-1xohofr).ant-modal .ant-modal-header{color:rgba(0,0,0,0.88);background:#ffffff;border-radius:8px 8px 0 0;margin-bottom:8px;padding:0;border-bottom:none;}:where(.css-1xohofr).ant-modal .ant-modal-body{font-size:14px;line-height:1.5714285714285714;word-wrap:break-word;padding:0;}:where(.css-1xohofr).ant-modal .ant-modal-body .ant-modal-body-skeleton{width:100%;height:100%;display:flex;justify-content:center;align-items:center;margin:16px auto;}:where(.css-1xohofr).ant-modal .ant-modal-footer{text-align:end;background:transparent;margin-top:12px;padding:0;border-top:none;border-radius:0;}:where(.css-1xohofr).ant-modal .ant-modal-footer >.ant-btn+.ant-btn{margin-inline-start:8px;}:where(.css-1xohofr).ant-modal .ant-modal-open{overflow:hidden;}:where(.css-1xohofr).ant-modal-pure-panel{top:auto;padding:0;display:flex;flex-direction:column;}:where(.css-1xohofr).ant-modal-pure-panel .ant-modal-content,:where(.css-1xohofr).ant-modal-pure-panel .ant-modal-body,:where(.css-1xohofr).ant-modal-pure-panel .ant-modal-confirm-body-wrapper{display:flex;flex-direction:column;flex:auto;}:where(.css-1xohofr).ant-modal-pure-panel .ant-modal-confirm-body{margin-bottom:auto;}:where(.css-1xohofr).ant-modal-root .ant-modal-wrap-rtl{direction:rtl;}:where(.css-1xohofr).ant-modal-root .ant-modal-wrap-rtl .ant-modal-confirm-body{direction:rtl;}:where(.css-1xohofr).ant-modal-root .ant-modal.ant-zoom-enter,:where(.css-1xohofr).ant-modal-root .ant-modal.ant-zoom-appear{transform:none;opacity:0;animation-duration:0.3s;user-select:none;}:where(.css-1xohofr).ant-modal-root .ant-modal.ant-zoom-leave .ant-modal-content{pointer-events:none;}:where(.css-1xohofr).ant-modal-root .ant-modal-mask{position:fixed;inset:0;z-index:1000;height:100%;background-color:rgba(0,0,0,0.45);pointer-events:none;}:where(.css-1xohofr).ant-modal-root .ant-modal-mask .ant-modal-hidden{display:none;}:where(.css-1xohofr).ant-modal-root .ant-modal-wrap{position:fixed;inset:0;z-index:1000;overflow:auto;outline:0;-webkit-overflow-scrolling:touch;}:where(.css-1xohofr).ant-modal-root .ant-fade-enter,:where(.css-1xohofr).ant-modal-root .ant-fade-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-1xohofr).ant-modal-root .ant-fade-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-1xohofr).ant-modal-root .ant-fade-enter.ant-fade-enter-active,:where(.css-1xohofr).ant-modal-root .ant-fade-appear.ant-fade-appear-active{animation-name:css-1xohofr-antFadeIn;animation-play-state:running;}:where(.css-1xohofr).ant-modal-root .ant-fade-leave.ant-fade-leave-active{animation-name:css-1xohofr-antFadeOut;animation-play-state:running;pointer-events:none;}:where(.css-1xohofr).ant-modal-root .ant-fade-enter,:where(.css-1xohofr).ant-modal-root .ant-fade-appear{opacity:0;animation-timing-function:linear;}:where(.css-1xohofr).ant-modal-root .ant-fade-leave{animation-timing-function:linear;}:where(.css-1xohofr).ant-zoom-enter,:where(.css-1xohofr).ant-zoom-appear{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-1xohofr).ant-zoom-leave{animation-duration:0.2s;animation-fill-mode:both;animation-play-state:paused;}:where(.css-1xohofr).ant-zoom-enter.ant-zoom-enter-active,:where(.css-1xohofr).ant-zoom-appear.ant-zoom-appear-active{animation-name:css-1xohofr-antZoomIn;animation-play-state:running;}:where(.css-1xohofr).ant-zoom-leave.ant-zoom-leave-active{animation-name:css-1xohofr-antZoomOut;animation-play-state:running;pointer-events:none;}:where(.css-1xohofr).ant-zoom-enter,:where(.css-1xohofr).ant-zoom-appear{transform:scale(0);opacity:0;animation-timing-function:cubic-bezier(0.08, 0.82, 0.17, 1);}:where(.css-1xohofr).ant-zoom-enter-prepare,:where(.css-1xohofr).ant-zoom-appear-prepare{transform:none;}:where(.css-1xohofr).ant-zoom-leave{animation-timing-function:cubic-bezier(0.78, 0.14, 0.15, 0.86);}:where(.css-1xohofr).ant-modal-root .ant-modal{--ant-modal-sm-width:var(--ant-modal-xs-width);--ant-modal-md-width:var(--ant-modal-sm-width);--ant-modal-lg-width:var(--ant-modal-md-width);--ant-modal-xl-width:var(--ant-modal-lg-width);--ant-modal-xxl-width:var(--ant-modal-xl-width);width:var(--ant-modal-xs-width);}@media (min-width: 576px){:where(.css-1xohofr).ant-modal-root .ant-modal{width:var(--ant-modal-sm-width);}}@media (min-width: 768px){:where(.css-1xohofr).ant-modal-root .ant-modal{width:var(--ant-modal-md-width);}}@media (min-width: 992px){:where(.css-1xohofr).ant-modal-root .ant-modal{width:var(--ant-modal-lg-width);}}@media (min-width: 1200px){:where(.css-1xohofr).ant-modal-root .ant-modal{width:var(--ant-modal-xl-width);}}@media (min-width: 1600px){:where(.css-1xohofr).ant-modal-root .ant-modal{width:var(--ant-modal-xxl-width);}}@keyframes css-1xohofr-antFadeIn{0%{opacity:0;}100%{opacity:1;}}@keyframes css-1xohofr-antFadeOut{0%{opacity:1;}100%{opacity:0;}}@keyframes css-1xohofr-antZoomIn{0%{transform:scale(0.2);opacity:0;}100%{transform:scale(1);opacity:1;}}@keyframes css-1xohofr-antZoomOut{0%{transform:scale(1);}100%{transform:scale(0.2);opacity:0;}}.anticon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.anticon >*{line-height:1;}.anticon svg{display:inline-block;}.anticon .anticon .anticon-icon{display:block;}.anticon{display:inline-flex;align-items:center;color:inherit;font-style:normal;line-height:0;text-align:center;text-transform:none;vertical-align:-0.125em;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}.anticon >*{line-height:1;}.anticon svg{display:inline-block;}.anticon .anticon .anticon-icon{display:block;}.ant-layout{background-color:transparent!important;}.ant-pro-layout .ant-layout{display:flex;background-color:transparent;width:100%;}.ant-pro-layout .ant-pro-layout-content{display:flex;flex-direction:column;width:100%;background-color:transparent;position:relative;padding-block:32px;padding-inline:40px;}.ant-pro-layout .ant-pro-layout-content-has-page-container{padding:0;}.ant-pro-layout .ant-pro-layout-container{width:100%;display:flex;flex-direction:column;min-width:0;min-height:0;background-color:transparent;}.ant-pro-layout .ant-pro-layout-bg-list{pointer-events:none;position:fixed;overflow:hidden;inset-block-start:0;inset-inline-start:0;z-index:0;height:100%;width:100%;background:linear-gradient(#ffffff, #f5f5f5 28%);}.ant-pro-layout .ant-layout-header.ant-pro-layout-header{height:56px;line-height:56px;z-index:19;width:100%;padding-block:0;padding-inline:0;border-block-end:1px solid rgba(5,5,5,0.06);background-color:rgba(255, 255, 255, 0.6);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background-color 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-pro-layout .ant-layout-header.ant-pro-layout-header-fixed-header{position:fixed;inset-block-start:0;width:100%;z-index:100;inset-inline-end:0;}.ant-pro-layout .ant-layout-header.ant-pro-layout-header-fixed-header-scroll{background-color:rgba(255, 255, 255, 0.8);}.ant-pro-layout .ant-layout-header.ant-pro-layout-header-header-actions{display:flex;align-items:center;font-size:16;cursor:pointer;}.ant-pro-layout .ant-layout-header.ant-pro-layout-header-header-actions .ant-pro-layout .ant-layout-header.ant-pro-layout-header-header-actions-item{padding-block:0;padding-inline:8px;}.ant-pro-layout .ant-layout-header.ant-pro-layout-header-header-actions .ant-pro-layout .ant-layout-header.ant-pro-layout-header-header-actions-item:hover{color:rgba(0,0,0,0.88);}.ant-pro-layout .ant-layout-header.ant-pro-layout-header-header-realDark{box-shadow:0 2px 8px 0 rgba(0, 0, 0, 65%);}.ant-pro-layout .ant-layout-header.ant-pro-layout-header-header-actions-header-action{transition:width 0.3s cubic-bezier(0.645, 0.045, 0.355, 1);}.ant-pro-top-nav-header{position:relative;width:100%;height:100%;background-color:transparent;}.ant-pro-top-nav-header .anticon{color:inherit;}.ant-pro-top-nav-header-main{display:flex;height:100%;padding-inline-start:16px;}.ant-pro-top-nav-header-main-left{display:flex;align-items:center;}.ant-pro-top-nav-header-main-left .ant-pro-layout-apps-icon{margin-inline-end:16px;margin-inline-start:-8px;}.ant-pro-top-nav-header-wide{max-width:1152px;margin:0 auto;}.ant-pro-top-nav-header-logo{position:relative;display:flex;height:100%;align-items:center;overflow:hidden;}.ant-pro-top-nav-header-logo >*:first-child{display:flex;align-items:center;min-height:22px;font-size:22px;}.ant-pro-top-nav-header-logo >*:first-child>img{display:inline-block;height:32px;vertical-align:middle;}.ant-pro-top-nav-header-logo >*:first-child>h1{display:inline-block;margin-block:0;margin-inline:0;line-height:24px;margin-inline-start:6px;font-weight:600;font-size:16px;color:rgba(0,0,0,0.88);vertical-align:top;}.ant-pro-top-nav-header-menu{min-width:0;display:flex;align-items:center;padding-inline:6px;padding-block:6px;line-height:44px;}.ant-pro-global-header-header-actions{display:flex;height:100%;align-items:center;}.ant-pro-global-header-header-actions-item{display:inline-flex;align-items:center;justify-content:center;padding-block:0;padding-inline:2px;color:rgba(0,0,0,0.45);font-size:16px;cursor:pointer;border-radius:6px;}.ant-pro-global-header-header-actions-item >*{padding-inline:6px;padding-block:6px;border-radius:6px;}.ant-pro-global-header-header-actions-item >*:hover{background-color:rgba(0, 0, 0, 0.03);}.ant-pro-global-header-header-actions-avatar{display:inline-flex;align-items:center;justify-content:center;padding-inline-start:16px;padding-inline-end:16px;cursor:pointer;color:rgba(0,0,0,0.45);}.ant-pro-global-header-header-actions-avatar >div{height:44px;color:rgba(0,0,0,0.45);padding-inline:8px;padding-block:8px;cursor:pointer;display:flex;align-items:center;line-height:44px;border-radius:6px;}.ant-pro-global-header-header-actions-avatar >div:hover{background-color:rgba(0, 0, 0, 0.03);}.ant-pro-page-container{position:relative;}.ant-pro-page-container-children-container{padding-block-start:0;padding-block-end:32px;padding-inline:40px;}.ant-pro-page-container-children-container-no-header{padding-block-start:32px;}.ant-pro-page-container-affix .ant-affix .ant-pro-page-container-warp{background-color:#ffffff;transition:background-color 0.3s;box-shadow:0 2px 8px #f0f1f2;}.ant-pro-page-container .ant-pro-page-container-warp-page-header{padding-block-start:8px;padding-block-end:16px;padding-inline-start:40px;padding-inline-end:40px;}.ant-pro-page-container .ant-pro-page-container-warp-page-header~.ant-pro-grid-content .ant-pro-page-container-children-content{padding-block:10.666666666666666px;}.ant-pro-page-container .ant-pro-page-container-warp-page-header .ant-page-header-breadcrumb{padding-block-start:18px;}.ant-pro-page-container .ant-pro-page-container-warp-page-header .ant-page-header-heading{padding-block-start:8px;}.ant-pro-page-container .ant-pro-page-container-warp-page-header .ant-page-header-footer{margin-block-start:8px;}.ant-pro-page-container-detail{display:flex;}@media (max-width: 576px){.ant-pro-page-container-detail{display:block;}}.ant-pro-page-container-main{width:100%;}.ant-pro-page-container-row{display:flex;width:100%;}@media (max-width: 768px){.ant-pro-page-container-row{display:block;}}.ant-pro-page-container-content{flex:auto;width:100%;}.ant-pro-page-container-extraContent{flex:0 1 auto;min-width:242px;margin-inline-start:88px;text-align:end;}@media (max-width: 1200px){.ant-pro-page-container-extraContent{margin-inline-start:44px;}}@media (max-width: 992px){.ant-pro-page-container-extraContent{margin-inline-start:20px;}}@media (max-width: 768px){.ant-pro-page-container-extraContent{margin-inline-start:0;text-align:start;}}@media (max-width: 576px){.ant-pro-page-container-extraContent{margin-inline-start:0;}}.ant-page-header{box-sizing:border-box;margin:0;padding:0;color:rgba(0,0,0,0.88);font-size:14px;line-height:1.5714285714285714;list-style:none;position:relative;background-color:#fff;padding-block:6px;padding-inline:16px;}.ant-page-header.ant-page-header-ghost{background-color:transparent;}.ant-page-header-no-children{height:32px;}.ant-page-header.ant-page-header-has-breadcrumb{padding-block-start:12px;}.ant-page-header.ant-page-header-has-footer{padding-block-end:0;}.ant-page-header .ant-page-header-back{margin-inline-end:16px;font-size:16px;line-height:1;}.ant-page-header .ant-page-header-back-button{font-size:16px;color:rgba(0,0,0,0.88);outline:none;cursor:pointer;transition:color 0.3s;}.ant-page-header .ant-page-header-back-button:focus,.ant-page-header .ant-page-header-back-button:hover{color:#69b1ff;}.ant-page-header .ant-page-header-back-button:active{color:#0958d9;}.ant-page-header-rlt .ant-page-header .ant-page-header-back{float:right;margin-inline-end:0;margin-inline-start:0;}.ant-page-header ant-divider-vertical{height:14px;margin-block:0;margin-inline:12px;vertical-align:middle;}.ant-page-header .ant-page-header-breadcrumb+.ant-page-header-heading{margin-block-start:8px;}.ant-page-header .ant-page-header-heading{display:flex;justify-content:space-between;}.ant-page-header .ant-page-header-heading-left{display:flex;align-items:center;margin-block:4px;margin-inline-end:0;margin-inline-start:0;overflow:hidden;}.ant-page-header .ant-page-header-heading-title{margin-inline-end:12px;margin-block-end:0;color:rgba(0,0,0,0.88);font-weight:600;font-size:20px;line-height:32px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.ant-page-header-rlt .ant-page-header .ant-page-header-heading-title{margin-inline-end:0;margin-inline-start:12px;}.ant-page-header .ant-page-header-heading-avatar{margin-inline-end:12px;}.ant-page-header-rlt .ant-page-header .ant-page-header-heading-avatar{float:right;margin-inline-end:0;margin-inline-start:12px;}.ant-page-header-rlt .ant-page-header .ant-page-header-heading-tags{float:right;}.ant-page-header .ant-page-header-heading-sub-title{margin-inline-end:12px;color:rgba(0,0,0,0.65);font-size:14px;line-height:1.5714285714285714;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;}.ant-page-header-rlt .ant-page-header .ant-page-header-heading-sub-title{float:right;margin-inline-end:0;margin-inline-start:12px;}.ant-page-header .ant-page-header-heading-extra{margin-block:4px;margin-inline-end:0;margin-inline-start:0;white-space:nowrap;}.ant-page-header .ant-page-header-heading-extra >*{white-space:unset;}.ant-page-header-rlt .ant-page-header .ant-page-header-heading-extra >*{margin-inline-end:12px;margin-inline-start:0;}.ant-page-header-rlt .ant-page-header .ant-page-header-heading-extra{float:left;}.ant-page-header-rlt .ant-page-header .ant-page-header-heading-extra *:first-child{margin-inline-end:0;}.ant-page-header-content{padding-block-start:12px;}.ant-page-header-footer{margin-block-start:16px;}.ant-page-header-compact .ant-page-header-heading{flex-wrap:wrap;}.ant-page-header-wide{max-width:1152px;margin:0 auto;}.ant-page-header-rtl{direction:rtl;}.ant-pro-grid-content{width:100%;}.ant-pro-grid-content-wide{max-width:1152px;margin:0 auto;}.data-ant-cssinjs-cache-path{content:"1g3r1lh|ant-design-icons|anticon:c2pd8u;11bn5ll|ant-design-icons|anticon:1i10n6t;133kysn|ProLayout:1u2alug;11bn5ll|Shared|ant:fadq2n;11bn5ll|Layout-Layout|ant-layout|anticon:16bu78o;133kysn|ProLayoutHeader:1jwyogm;133kysn|ProLayoutHeaderStylish:1wjgkr2;1jqs50c|Shared|ant:4ferfz;1jqs50c|Layout-Layout|ant-layout|anticon:f9x9n8;133kysn|ProLayoutTopNavHeader:1yhtjle;133kysn|ProLayoutRightContent:o9daay;1jqs50c|Dropdown-Dropdown|ant-dropdown|anticon:nsl0x1;1jqs50c|Tooltip-Tooltip|ant-tooltip|anticon:1yy8bak;1jqs50c|Drawer-Drawer|ant-drawer|anticon:dsubtk;1jqs50c|Button-Button|ant-btn|anticon:i50biy;133kysn|ProLayoutPageContainer:1g12r2f;133kysn|ProLayoutPageContainerStylish:e1q26s;133kysn|ProLayoutPageHeader:1gpntmz;133kysn|ProLayoutGridContent:110sobs;11bn5ll|Anchor-Anchor|ant-anchor|anticon:1cxga8i;11bn5ll|Modal-Modal|ant-modal|anticon:2ortok";}</style><style>* { box-sizing: border-box; }
body { margin: 0; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; }
.app-loading { display: flex; justify-content: center; align-items: center; min-height: 100vh; background: #fcfcfc; }
.app-loading-spinner { width: 40px; height: 40px; border: 3px solid #f3f3f3; border-top: 3px solid #1890ff; border-radius: 50%; animation: spin 1s linear infinite; }
@keyframes spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }
@keyframes ssr-nav-progress { 0% { transform: translateX(-100%); } 100% { transform: translateX(350%); } }
.ant-pro-layout { min-height: 100vh; }</style><style>@font-face{font-family:OldStandardTT-Bold;src:url(/static/OldStandardTT-Bold-QrSDH864.woff2) format("woff2"),url(/static/OldStandardTT-Bold-DX0388vX.woff) format("woff");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:OldStandardTT-Bold-Fallback;src:local("Georgia Bold"),local("Georgia-Bold"),local("Georgia");font-weight:400;size-adjust:91.76%;ascent-override:83.05%;descent-override:25.94%;line-gap-override:25.72%}@font-face{font-family:OldStandardTT-Regular;src:url(/static/OldStandardTT-Regular-DeGJQNzL.woff2) format("woff2"),url(/static/OldStandardTT-Regular-BfD33lbI.woff) format("woff");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:OldStandardTT-Regular-Fallback;src:local("Georgia");font-weight:400;size-adjust:103.67%;ascent-override:73.5%;descent-override:22.96%;line-gap-override:22.76%}body{margin:0;overflow-y:scroll;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-width:none;position:relative;background:#fcfcfc}ul{padding:0;margin:0}li{list-style-type:none}pre{border-radius:16px;margin:0!important;background:#f5f5f5!important}#root{height:100vh;display:flex;flex-direction:column;align-items:center}body::-webkit-scrollbar{display:none}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.main-content{padding:4px}.small-icon .icon{font-size:1em!important}.custom-footer{font-size:1.1em}@media only screen and (max-width:600px){.hide-on-mobile{display:none!important}}.ant-pro-layout .ant-pro-layout-bg-list{background:#fcfcfc}div.ant-pro-checkcard-title{align-items:flex-start}.ant-menu-item-selected{color:#1668dc!important}.ant-modal-content .ant-modal-body{padding-top:16px}a{color:#4096ff}.ant-design-pro{width:100%}.ant-input-affix-wrapper>input.ant-input,.ant-input-affix-wrapper>textarea.ant-input{font-size:14px}.ant-pro-form-login-logo{height:40px}.ant-pro-checkcard{margin-block-end:0}.ant-page-header-no-children{height:0px}.echarts-tooltip{height:500px;overflow-y:auto}.ant-pro-layout .ant-layout-header:first-child{height:64px!important}.ant-pro-layout .ant-layout-header.ant-pro-layout-header-fixed-header{position:fixed;inset-inline:0;left:0;transform:none;margin:0;width:100%;max-width:none;height:64px;line-height:normal;--ahm-header-p: var(--ahm-header-progress, 0);background:rgb(255 255 255 / calc(.8 * var(--ahm-header-p)));backdrop-filter:saturate(calc(100% + 80% * var(--ahm-header-p))) blur(calc(16px * var(--ahm-header-p)));-webkit-backdrop-filter:saturate(calc(100% + 80% * var(--ahm-header-p))) blur(calc(16px * var(--ahm-header-p)));border-bottom:0;border-radius:0;box-shadow:0 .5px rgb(17 17 17 / calc(.08 * var(--ahm-header-p)));transition-property:background-color,backdrop-filter,-webkit-backdrop-filter,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(.22,1,.36,1)}@media(prefers-reduced-motion:reduce){.ant-pro-layout .ant-layout-header.ant-pro-layout-header-fixed-header{transition:none}}.ant-pro-top-nav-header-main.ant-pro-top-nav-header-wide{--ahm-shell-gutter: 24px;box-sizing:border-box;width:100%;max-width:none!important;margin-inline:0;padding-inline:var(--ahm-shell-gutter)}.ant-pro-top-nav-header-main .ant-pro-top-nav-header-menu{padding:0!important}.ant-pro-grid-content.ant-pro-grid-content-wide,.ant-pro-page-header.ant-pro-page-header-wide{max-width:1280px!important}.ahm-topbar{display:flex;align-items:center;gap:24px;width:100%;min-width:0}.brand-logo{--brand-logo-width: 110px;--brand-logo-height: 24px;display:inline-block;width:var(--brand-logo-width);height:var(--brand-logo-height);flex:0 0 var(--brand-logo-width);vertical-align:middle;line-height:0}.brand-logo img{width:100%;height:100%;object-fit:contain;object-position:left center}.brand-logo .brand-logo-light{display:block}.ahm-brand{display:flex;align-items:center;gap:9px;cursor:pointer;flex-shrink:0;color:#111;text-decoration:none}.ahm-brand:hover{color:#111}.ahm-brand:focus-visible{outline:none;border-radius:10px;box-shadow:0 0 0 3px #2563eb4d}.ahm-topnav{display:flex;align-items:center;gap:2px;min-width:0;margin-inline-start:auto;overflow-x:auto;scrollbar-width:none}.ahm-topnav::-webkit-scrollbar{display:none}.ahm-topnav a{display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border-radius:10px;color:#353941;font-size:14px;font-weight:500;line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .15s cubic-bezier(.2,0,0,1),color .15s cubic-bezier(.2,0,0,1)}.ahm-topnav a:hover{background:#1111110a;color:#111}.ahm-topnav a:focus-visible{outline:none;box-shadow:0 0 0 3px #2563eb4d}@media only screen and (max-width:767px){.ant-pro-top-nav-header-main.ant-pro-top-nav-header-wide{--ahm-shell-gutter: 12px;padding-inline:12px}.ahm-topnav{display:none}}.ant-pro-global-header .ant-pro-global-header-collapsed-button{display:none}body.ahm-menu-open .ant-pro-layout .ant-layout-header.ant-pro-layout-header-fixed-header{--ahm-header-p: 1;box-shadow:none}body.ahm-menu-open .ahm-cookie-banner{display:none}@media only screen and (max-width:767px){.ant-pro-global-header .ant-pro-global-header-header-actions-avatar{display:none}}.ahm-header-auth.ant-btn{min-width:60px;padding-inline:8px}.ahm-header-auth .ahm-auth-icon{display:none}@media only screen and (max-width:479px){.ahm-header-auth.ant-btn{min-width:32px;width:32px;padding-inline:4px}.ahm-header-auth .ahm-auth-label{display:none}.ahm-header-auth .ahm-auth-icon{display:inline-flex}}.ant-pro-table-list-toolbar-container{padding-block:24px}.ant-alert .ant-alert-close-icon{margin-top:4px}.ant-pro-checkcard,.ant-card{box-shadow:0 2px 8px #0000000f;border:.5px solid rgba(0,0,0,.1)}.ant-pro-checkcard-header{align-items:flex-start}div.ant-pro-checkcard-content{padding-inline:16px;padding-block:16px 8px}.ant-pro-checkcard-header-left,.ant-pro-list-row-header{width:100%;display:block}.ant-tag-checkable{background:#ffffff1a;border-radius:8px;border:1px solid rgba(0,0,0,.1);margin-right:16px;margin-bottom:8px}.ant-table-container{border:1px solid #EEEEEE;border-radius:8px}.ant-tag-checkable-checked{background:#2563eb;border-radius:8px}.ant-pro-list-row-card .ant-list-item-meta-title{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.ant-drawer .ant-drawer-header{border-bottom:0px solid #EEEEEE}.ant-tag.ant-tag-cyan{color:#16bad9;background:#26cceb1a;border-color:#26cceb}.ant-tag.ant-tag-magenta{color:#eb267b;background:#eb267b1a;border-color:#eb267b}.ant-pro-global-header-header-actions-avatar{padding-inline-start:0}.ant-pro-global-header-header-actions-avatar .ant-dropdown-trigger span:not(.ant-avatar){max-width:84px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ant-back-top{inset-inline-end:24px!important;inset-block-end:24px!important}.ant-float-btn .ant-float-btn-body .ant-float-btn-content .ant-float-btn-icon{width:auto}.footer{display:flex;flex-direction:column;gap:32px;max-width:1280px;margin-inline:auto;padding-block:48px;color:#626773}.footer-brand{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.footer-brand-name{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:800;color:#1a1a1a}.footer-copyright{font-size:14px;line-height:20px;color:#9ca3af;margin:0}.footer-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.footer-column-title{font-size:14px;line-height:22px;font-weight:600;color:#1a1a1a;margin:0 0 12px}.footer-column-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.footer-column-list li a{display:inline-block;overflow-wrap:anywhere;font-size:14px;line-height:22px;color:#626773;text-decoration:none;transition:color .15s}.footer-column-list li a:hover{color:#1a1a1a}.footer-social{display:flex;flex-wrap:wrap;gap:4px;list-style:none;margin:2px 0 0 -8px;padding:0}.footer-social a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:8px;color:#626773;transition:color var(--ah-duration-fast, .15s) var(--ah-ease-standard, ease),background-color var(--ah-duration-fast, .15s) var(--ah-ease-standard, ease)}.footer-social a:hover{color:#1a1a1a;background:#3539410f}.footer-social a:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.footer-column{min-width:0}.footer-privacy-choices{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:0;border:0;background:none;color:#626773;font:inherit;font-size:14px;line-height:22px;text-align:left;text-decoration:underline;text-underline-offset:3px;cursor:pointer;overflow-wrap:anywhere}.footer-privacy-choices:hover{color:#1a1a1a}.footer-privacy-choices:focus-visible{outline:2px solid #2563eb;outline-offset:4px}.footer-privacy-choices .anticon{flex-shrink:0}.footer-column-title{overflow-wrap:anywhere}.footer-column-list a:focus-visible{outline:2px solid #2563eb;outline-offset:4px}@media(min-width:768px){.footer-columns{grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);grid-template-columns:none;gap:32px}}@media(min-width:1024px){.footer{flex-direction:row;align-items:flex-start;justify-content:space-between;gap:64px}.footer-brand{flex:0 0 220px;min-width:0}.footer-columns{flex:0 1 820px;min-width:0;grid-template-columns:repeat(3,minmax(0,1fr)) minmax(180px,1.25fr);grid-auto-flow:row}}@media(max-width:767px){.footer{padding-block:48px}.footer-columns{display:block;columns:2;column-gap:24px}.footer-column{break-inside:avoid;margin-bottom:32px}.footer-column-list{gap:0}.footer-column-list a,.footer-privacy-choices{padding-block:10px;min-height:44px}.footer-social a{width:44px;height:44px}.footer-social{margin-left:-13px}}</style><style id="ssr-styled">.kMgEVL{width:100%;max-width:calc(1040px + 2 * var(--ah-space-6,24px));margin-inline:auto;padding-inline:var(--ah-space-6,24px);padding-block:16px 80px;color:#1a1a1a;}/*!sc*/
@media (max-width:639px){.kMgEVL{padding-inline:var(--ah-space-4,16px);}}/*!sc*/
data-styled.g368[id="sc-1c0xtl9-0"]{content:"kMgEVL,"}/*!sc*/
.jpnGFj{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px;}/*!sc*/
data-styled.g369[id="sc-1c0xtl9-1"]{content:"jpnGFj,"}/*!sc*/
.feFHco{font-size:14px;color:#888;}/*!sc*/
.feFHco a{color:#888;cursor:pointer;}/*!sc*/
.feFHco a:hover{color:#2563eb;}/*!sc*/
data-styled.g370[id="sc-1c0xtl9-2"]{content:"feFHco,"}/*!sc*/
.Bwa-Do{font-size:clamp(32px,3.4vw,44px);font-weight:700;line-height:1.15;letter-spacing:-0.02em;margin:0 0 16px;text-wrap:balance;}/*!sc*/
@media (max-width:560px){.Bwa-Do{font-size:28px;}}/*!sc*/
data-styled.g371[id="sc-1c0xtl9-3"]{content:"Bwa-Do,"}/*!sc*/
.gGIGKA{font-size:14px;color:#888;margin-bottom:28px;}/*!sc*/
.gGIGKA>*+*::before{content:'·';margin:0 6px;}/*!sc*/
data-styled.g373[id="sc-1c0xtl9-5"]{content:"gGIGKA,"}/*!sc*/
.dHXlSg{width:100%;aspect-ratio:1.9/1;object-fit:cover;border-radius:16px;border:1px solid #f0f0f0;margin-bottom:36px;}/*!sc*/
data-styled.g374[id="sc-1c0xtl9-6"]{content:"dHXlSg,"}/*!sc*/
.jonNQo{font-size:16px;line-height:1.75;color:#2a2a2a;overflow-wrap:break-word;}/*!sc*/
.jonNQo >*:first-child{margin-top:0;}/*!sc*/
.jonNQo h2{font-size:24px;font-weight:650;color:#1a1a1a;margin:40px 0 14px;letter-spacing:-0.01em;}/*!sc*/
.jonNQo h3{font-size:19px;font-weight:600;color:#1a1a1a;margin:32px 0 10px;}/*!sc*/
.jonNQo p{margin:0 0 18px;}/*!sc*/
.jonNQo a{color:#2563eb;text-decoration:none;border-bottom:1px solid rgba(37,99,235,0.25);transition:border-color 0.15s ease-out;}/*!sc*/
.jonNQo a:hover{border-bottom-color:#2563eb;}/*!sc*/
.jonNQo strong{font-weight:600;color:#1a1a1a;}/*!sc*/
.jonNQo ul,.jonNQo ol{padding-left:24px;margin:0 0 18px;}/*!sc*/
.jonNQo li{margin:6px 0;list-style-type:inherit;}/*!sc*/
.jonNQo li::marker{color:#94a3b8;}/*!sc*/
.jonNQo blockquote{margin:24px 0;padding:8px 20px;border-left:3px solid #2563eb;background:rgba(37,99,235,0.04);border-radius:0 8px 8px 0;color:#444;}/*!sc*/
.jonNQo blockquote p:last-child{margin-bottom:0;}/*!sc*/
.jonNQo hr{border:none;border-top:1px solid #eee;margin:36px 0;}/*!sc*/
.jonNQo code{font-family:'SF Mono',SFMono-Regular,Menlo,Consolas,monospace;font-size:14px;background:#f3f4f6;color:#334155;padding:2px 6px;border-radius:4px;overflow-wrap:anywhere;}/*!sc*/
.jonNQo.jonNQo pre{background:#ffffff!important;color:#1f2937;border:1px solid #e5e7eb;border-radius:10px;padding:18px 20px;overflow-x:auto;margin:0 0 22px!important;}/*!sc*/
.jonNQo.jonNQo pre code{background:transparent;color:#334155;padding:0;border-radius:0;font-size:13.5px;line-height:1.65;}/*!sc*/
.jonNQo .blog-table-scroll{max-width:100%;overflow-x:auto;margin:0 0 22px;}/*!sc*/
.jonNQo table{border-collapse:collapse;width:100%;margin:0 0 22px;font-size:15px;}/*!sc*/
.jonNQo .blog-table-scroll>table{margin:0;}/*!sc*/
.jonNQo th,.jonNQo td{border:1px solid #e5e7eb;padding:9px 14px;text-align:left;}/*!sc*/
.jonNQo th{background:#f9fafb;font-weight:600;color:#1a1a1a;}/*!sc*/
.jonNQo tr:nth-child(even) td{background:#fcfcfd;}/*!sc*/
.jonNQo img{max-width:100%;height:auto;border-radius:10px;}/*!sc*/
.jonNQo figure{margin:28px 0;}/*!sc*/
.jonNQo .kg-image-card img,.jonNQo .kg-gallery-image img{border:1px solid #f0f0f0;}/*!sc*/
.jonNQo figcaption{font-size:13px;color:#888;text-align:center;margin-top:10px;}/*!sc*/
.jonNQo .kg-embed-card{position:relative;}/*!sc*/
.jonNQo .kg-embed-card iframe{width:100%;aspect-ratio:16/9;height:auto;border:none;border-radius:10px;}/*!sc*/
.jonNQo .kg-video-card video{width:100%;border-radius:10px;}/*!sc*/
.jonNQo .kg-bookmark-card a{display:block;border:1px solid #e5e7eb;border-radius:10px;padding:14px 16px;color:#1a1a1a;border-bottom-width:1px;transition:border-color 0.2s ease-out,box-shadow 0.2s ease-out;}/*!sc*/
.jonNQo .kg-bookmark-card a:hover{border-color:rgba(37,99,235,0.35);box-shadow:0 6px 20px rgba(37,99,235,0.08);}/*!sc*/
.jonNQo .kg-callout-card{display:flex;gap:10px;border-radius:10px;padding:14px 16px;margin:24px 0;background:#f8fafc;}/*!sc*/
data-styled.g375[id="sc-1c0xtl9-7"]{content:"jonNQo,"}/*!sc*/
.jsOPmD{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:72px;}/*!sc*/
@media (max-width:1024px){.jsOPmD{grid-template-columns:minmax(0,1fr);gap:0;}}/*!sc*/
.jsOPmD [id]{scroll-margin-top:88px;}/*!sc*/
data-styled.g376[id="sc-1c0xtl9-8"]{content:"jsOPmD,"}/*!sc*/
.cslRFF{min-width:0;}/*!sc*/
data-styled.g377[id="sc-1c0xtl9-9"]{content:"cslRFF,"}/*!sc*/
.cpcDux{position:sticky;top:88px;display:flex;flex-direction:column;max-height:calc(100vh - 120px - 24px);}/*!sc*/
@media (max-width:1024px){.cpcDux{display:none;}}/*!sc*/
.cpcDux.cpcDux .ant-anchor::before,.cpcDux.cpcDux .ant-anchor-ink{display:none!important;}/*!sc*/
.cpcDux.cpcDux .ant-anchor-link{padding:0;}/*!sc*/
.cpcDux.cpcDux .ant-anchor-link-title{display:block;padding:5px 10px;border-radius:8px;color:#626773;font-size:13.5px;line-height:1.45;white-space:normal;transition:background-color 0.15s ease,color 0.15s ease;}/*!sc*/
.cpcDux.cpcDux .ant-anchor-link .ant-anchor-link .ant-anchor-link-title{padding-left:24px;font-size:13px;}/*!sc*/
.cpcDux.cpcDux .ant-anchor-link-title:hover{background:rgba(17,17,17,0.05);color:#111111;}/*!sc*/
.cpcDux.cpcDux .ant-anchor-link-active>.ant-anchor-link-title{color:#111111;font-weight:600;}/*!sc*/
data-styled.g378[id="sc-1c0xtl9-10"]{content:"cpcDux,"}/*!sc*/
.hxUGEH{font-size:12.5px;font-weight:600;letter-spacing:0.04em;text-transform:uppercase;color:#999;padding:0 10px;margin-bottom:8px;}/*!sc*/
data-styled.g379[id="sc-1c0xtl9-11"]{content:"hxUGEH,"}/*!sc*/
.dmMZCQ{flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:thin;}/*!sc*/
data-styled.g380[id="sc-1c0xtl9-12"]{content:"dmMZCQ,"}/*!sc*/
.ifprbj{flex:none;margin-top:16px;padding:20px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;}/*!sc*/
.ifprbj:first-child{margin-top:0;}/*!sc*/
.ifprbj .brand-logo{display:block;margin-bottom:14px;}/*!sc*/
data-styled.g381[id="sc-1c0xtl9-13"]{content:"ifprbj,"}/*!sc*/
.gijIP{font-size:15px;font-weight:600;line-height:1.4;color:#1a1a1a;margin:0 0 16px;}/*!sc*/
data-styled.g382[id="sc-1c0xtl9-14"]{content:"gijIP,"}/*!sc*/
.czYpSp{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:36px;padding:7px 12px;border:none;border-radius:8px;background:#2563eb;color:#fff;font:inherit;font-size:14px;font-weight:500;line-height:20px;text-decoration:none;cursor:pointer;transition:background-color 0.15s ease;}/*!sc*/
.czYpSp:hover{background:#1d4ed8;color:#fff;}/*!sc*/
.czYpSp:active{background:#0049df;color:#fff;}/*!sc*/
.czYpSp:focus-visible{outline:2px solid #2563eb;outline-offset:2px;}/*!sc*/
data-styled.g383[id="sc-1c0xtl9-15"]{content:"czYpSp,"}/*!sc*/
.hUosnH{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:48px;padding:24px;background:#fff;border:1px solid #e5e7eb;border-radius:10px;}/*!sc*/
.hUosnH .brand-logo{display:block;margin-bottom:10px;}/*!sc*/
@media (max-width:560px){.hUosnH{flex-direction:column;align-items:stretch;gap:16px;}}/*!sc*/
data-styled.g384[id="sc-1c0xtl9-16"]{content:"hUosnH,"}/*!sc*/
.cebqkZ{margin:0;font-size:16px;font-weight:600;line-height:1.45;color:#1a1a1a;white-space:pre-line;text-wrap:pretty;}/*!sc*/
data-styled.g385[id="sc-1c0xtl9-17"]{content:"cebqkZ,"}/*!sc*/
.cMkKAz{width:auto;flex:none;padding:7px 16px;}/*!sc*/
@media (max-width:560px){.cMkKAz{width:100%;}}/*!sc*/
data-styled.g386[id="sc-1c0xtl9-18"]{content:"cMkKAz,"}/*!sc*/
.DWxSg{margin-top:56px;padding-top:28px;border-top:1px solid #f0f0f0;}/*!sc*/
data-styled.g387[id="sc-1c0xtl9-19"]{content:"DWxSg,"}/*!sc*/
.bdVRff{font-size:18px;font-weight:650;margin:0 0 18px;}/*!sc*/
data-styled.g388[id="sc-1c0xtl9-20"]{content:"bdVRff,"}/*!sc*/
.bXzQsu{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:16px;}/*!sc*/
data-styled.g389[id="sc-1c0xtl9-21"]{content:"bXzQsu,"}/*!sc*/
.jlSeMr{display:block;background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow:hidden;cursor:pointer;transition:box-shadow 0.2s ease-out,border-color 0.2s ease-out;}/*!sc*/
.jlSeMr:hover{border-color:rgba(37,99,235,0.35);box-shadow:0 8px 24px rgba(37,99,235,0.1);}/*!sc*/
.jlSeMr:hover h3{color:#2563eb;}/*!sc*/
data-styled.g390[id="sc-1c0xtl9-22"]{content:"jlSeMr,"}/*!sc*/
.kdkCIq{aspect-ratio:16/9;background:linear-gradient(135deg,rgba(37,99,235,0.08),rgba(37,99,235,0.02));overflow:hidden;}/*!sc*/
.kdkCIq img{width:100%;height:100%;object-fit:cover;}/*!sc*/
data-styled.g391[id="sc-1c0xtl9-23"]{content:"kdkCIq,"}/*!sc*/
.jiOOqg{padding:12px 14px 14px;}/*!sc*/
.jiOOqg h3{font-size:14.5px;font-weight:600;line-height:1.4;color:#1a1a1a;margin:0 0 6px;transition:color 0.15s ease-out;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}/*!sc*/
.jiOOqg time{font-size:12.5px;color:#888;}/*!sc*/
data-styled.g392[id="sc-1c0xtl9-24"]{content:"jiOOqg,"}/*!sc*/
</style><link rel="stylesheet" href="/static/legacy-shell-D_FsbdFd.css#"/></head><body><div aria-hidden="true" style="position:fixed;top:0;left:0;right:0;height:2px;z-index:9999;pointer-events:none;opacity:0;transition:opacity .25s;overflow:hidden"><div style="height:100%;width:30%;background:#2563EB;border-radius:2px;animation:none"></div></div><div class="css-1xohofr ant-design-pro ant-pro-layout ant-pro-layout-top-menu ant-pro-layout-fix-siderbar ant-pro-layout-top"><div class="ant-pro-layout-bg-list css-1xohofr"></div><div class="ant-layout css-1xohofr" style="min-height:100%"><div style="position:relative" class="ant-pro-layout-container css-1xohofr"><header class="ant-layout-header css-18nm6z4" style="height:56px;line-height:56px;background-color:transparent;z-index:19"></header><header class="ant-layout-header css-1xohofr ant-pro-layout-header ant-pro-layout-header-fixed-header ant-pro-layout-header-fixed-header-action ant-pro-layout-header-top-menu ant-pro-layout-header-header css-18nm6z4"><div class="ant-pro-top-nav-header css-18nm6z4 ant-pro-top-nav-header-light"><div class="ant-pro-top-nav-header-main css-18nm6z4 ant-pro-top-nav-header-wide"><div style="flex:1" class="ant-pro-top-nav-header-menu css-18nm6z4"><div class="ahm-topbar"><a class="ahm-brand" href="/" aria-label="AIHubMix"><span class="brand-logo"><img class="brand-logo-light" src="/brand/light.svg?v=20260909" width="110" height="24" alt="AIHubMix"/></span></a><nav class="ahm-topnav"><a href="/models">Models</a><a href="https://aihubmix.com/playground" target="_blank" rel="noopener noreferrer">Playground</a><a href="/ecosystem">Ecosystem</a><a href="https://enterprise.aihubmix.com" target="_blank" rel="noopener noreferrer">Enterprise</a><a href="https://docs.aihubmix.com/en" target="_blank" rel="noopener noreferrer">Docs</a><a href="https://console.aihubmix.com/statistics" target="_blank" rel="noopener noreferrer nofollow">Dashboard</a></nav></div></div><div class="ant-pro-global-header-right-content css-18nm6z4" style="min-width:auto;height:100%"><div style="height:100%"><div style="display:flex;align-items:center;height:100%;justify-content:flex-end"><div class="ant-pro-global-header-header-actions css-18nm6z4"><div class="ant-pro-global-header-header-actions-item css-18nm6z4 ant-pro-global-header-header-actions-hover"><button type="button" class="ant-dropdown-trigger ahm-language-trigger ahm-header-icon-button" aria-label="Language"><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" aria-hidden="true" class="remixicon ahm-header-icon"><path d="M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22ZM9.71002 19.6674C8.74743 17.6259 8.15732 15.3742 8.02731 13H4.06189C4.458 16.1765 6.71639 18.7747 9.71002 19.6674ZM10.0307 13C10.1811 15.4388 10.8778 17.7297 12 19.752C13.1222 17.7297 13.8189 15.4388 13.9693 13H10.0307ZM19.9381 13H15.9727C15.8427 15.3742 15.2526 17.6259 14.29 19.6674C17.2836 18.7747 19.542 16.1765 19.9381 13ZM4.06189 11H8.02731C8.15732 8.62577 8.74743 6.37407 9.71002 4.33256C6.71639 5.22533 4.458 7.8235 4.06189 11ZM10.0307 11H13.9693C13.8189 8.56122 13.1222 6.27025 12 4.24799C10.8778 6.27025 10.1811 8.56122 10.0307 11ZM14.29 4.33256C15.2526 6.37407 15.8427 8.62577 15.9727 11H19.9381C19.542 7.8235 17.2836 5.22533 14.29 4.33256Z"></path></svg></button></div><div class="ant-pro-global-header-header-actions-item css-18nm6z4 ant-pro-global-header-header-actions-hover"><button type="button" class="ahm-notification-trigger ahm-header-icon-button" aria-label="Inbox" aria-haspopup="dialog" aria-expanded="false" aria-describedby="_R_3jfaq6lbddlr5_"><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" aria-hidden="true" focusable="false" class="remixicon ahm-header-icon"><path d="M22 20H2V18H3V11.0314C3 6.04348 7.02944 2 12 2C16.9706 2 21 6.04348 21 11.0314V18H22V20ZM5 18H19V11.0314C19 7.14806 15.866 4 12 4C8.13401 4 5 7.14806 5 11.0314V18ZM9.5 21H14.5C14.5 22.3807 13.3807 23.5 12 23.5C10.6193 23.5 9.5 22.3807 9.5 21Z"></path></svg></button></div><div class="ant-pro-global-header-header-actions-item css-18nm6z4 ant-pro-global-header-header-actions-hover"><button aria-label="Sign in" title="Sign in" type="button" class="ant-btn css-18nm6z4 ant-btn-link ant-btn-color-link ant-btn-variant-link ahm-header-auth"><span role="img" aria-label="login" class="anticon anticon-login ahm-auth-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="login" width="1em" height="1em" fill="currentColor" aria-hidden="true"><defs><style></style></defs><path d="M521.7 82c-152.5-.4-286.7 78.5-363.4 197.7-3.4 5.3.4 12.3 6.7 12.3h70.3c4.8 0 9.3-2.1 12.3-5.8 7-8.5 14.5-16.7 22.4-24.5 32.6-32.5 70.5-58.1 112.7-75.9 43.6-18.4 90-27.8 137.9-27.8 47.9 0 94.3 9.3 137.9 27.8 42.2 17.8 80.1 43.4 112.7 75.9 32.6 32.5 58.1 70.4 76 112.5C865.7 417.8 875 464.1 875 512c0 47.9-9.4 94.2-27.8 137.8-17.8 42.1-43.4 80-76 112.5s-70.5 58.1-112.7 75.9A352.8 352.8 0 01520.6 866c-47.9 0-94.3-9.4-137.9-27.8A353.84 353.84 0 01270 762.3c-7.9-7.9-15.3-16.1-22.4-24.5-3-3.7-7.6-5.8-12.3-5.8H165c-6.3 0-10.2 7-6.7 12.3C234.9 863.2 368.5 942 520.6 942c236.2 0 428-190.1 430.4-425.6C953.4 277.1 761.3 82.6 521.7 82zM395.02 624v-76h-314c-4.4 0-8-3.6-8-8v-56c0-4.4 3.6-8 8-8h314v-76c0-6.7 7.8-10.5 13-6.3l141.9 112a8 8 0 010 12.6l-141.9 112c-5.2 4.1-13 .4-13-6.3z"></path></svg></span><span class="ahm-auth-label">Sign in</span></button></div></div></div></div></div></div></div></header><main class="ant-layout-content ant-pro-layout-content css-1xohofr ant-pro-layout-has-header css-1xohofr" style="padding:0"><div class="ant-pro-page-container css-1xohofr"><div class="css-1xohofr ant-page-header-no-children"></div><div class="ant-pro-grid-content css-1xohofr ant-pro-grid-content-wide"><div class="ant-pro-grid-content-children css-1xohofr"><div class="css-1xohofr ant-pro-page-container-children-container" style="padding-inline:0;padding-block-end:0;padding-block-start:40px"><div class="sc-1c0xtl9-0 kMgEVL"><div class="sc-1c0xtl9-8 jsOPmD"><div class="sc-1c0xtl9-9 cslRFF"><div class="sc-1c0xtl9-1 jpnGFj"><nav class="sc-1c0xtl9-2 feFHco"><a href="/blog" data-discover="true">Blog</a> › <a href="/blog/tag/tutorial" data-discover="true">Tutorial</a></nav></div><h1 class="sc-1c0xtl9-3 Bwa-Do">Codex Compaction Fails With &quot;response protection is unavailable&quot;: It&#x27;s the Web Search, Not Your Context</h1><div class="sc-1c0xtl9-5 gGIGKA"><span>AIHubMix</span><time dateTime="2026-10-10T08:35:09.000+00:00">October 10, 2026</time><span>8 min read</span></div><img src="https://aihubmix.com/blog-media/images/2026/10/b3979112d3018b38.png" alt="Codex Compaction Fails With &quot;response protection is unavailable&quot;: It&#x27;s the Web Search, Not Your Context" fetchPriority="high" class="sc-1c0xtl9-6 dHXlSg"/><article data-blog-article="true" class="sc-1c0xtl9-7 jonNQo"><p>Since October 8, 2026, long Codex sessions have been dying the moment they try to compact. The error reads <code>stream disconnected before completion: response protection is unavailable</code>, retries don't help, and the conversation can't continue. Most reports involve gpt-6.1-sol, but gpt-6-astra and gpt-5.6-sol fail the same way. It shows up behind self-hosted proxies, and it also shows up in the <a href="https://github.com/openai/codex/issues/52016">official Codex app with a direct ChatGPT login</a>.</p>
<p>The short answer: the context isn't too big, and your network isn't the problem. ChatGPT's Codex backend now rejects any request that replays an earlier web search in its history without also declaring the web search tool. Codex's compaction request declares no tools at all. So a single web search early in a session is enough to make every later compaction fail.</p>
<p>What to do right now:</p>
<ul>
<li><strong>New sessions</strong>: set <code>web_search = "disabled"</code> until the backend or Codex changes.</li>
<li><strong>Stuck sessions</strong>: move the work into a fresh session. The old one won't compact.</li>
<li><strong>If you maintain your own gateway</strong> in front of Codex: add a web search declaration when the history contains a search. The code is below.</li>
</ul>
<p>The rest of this post explains how the trigger was found, which community fixes don't work, and how to rescue a stuck session.</p>
<h2 id="what-the-failure-looks-like">What the failure looks like</h2>
<p>You'll see one of these in Codex:</p>
<pre><code class="language-text">stream disconnected before completion: response protection is unavailable
Error running remote compact task: stream disconnected before completion: stream closed before response.completed
</code></pre>
<p>The second message is the generic version. Codex doesn't always show the upstream error, so a compaction that fails with "stream closed before response.completed" can be the same problem. Codex's local log often has <code>Failed to run pre-sampling compact</code> next to it.</p>
<p>Underneath, the upstream sends one of two things. Sometimes it's an HTTP 502 with this body, which a ChatGPT Plus user on gpt-6.1-sol also posted to <a href="https://community.openai.com/t/codex-remote-compaction-fails-with-502-response-protection-is-unavailable/1404550">OpenAI's developer forum</a>:</p>
<pre><code class="language-json">{"message": "response protection is unavailable", "type": "internal_error"}
</code></pre>
<p>Other times it's an HTTP 200 whose stream ends in a <code>response.failed</code> event with <code>code: "upstream_error"</code> and no <code>response.completed</code>. Anything that only checks the HTTP status misses the second form and reports it as a stream that ended early.</p>
<p>The pattern is the same everywhere:</p>
<ul>
<li>Normal turns keep working. Only compaction fails.</li>
<li>Codex retries about five times, then gives up. In one gateway's logs, each failed attempt took 2 to 13 seconds and recorded zero tokens.</li>
<li>Resuming the session runs into the same compaction, so the session stays stuck.</li>
<li>A fresh session works until it hits the same conditions.</li>
</ul>
<h2 id="the-trigger-a-search-in-history-no-search-tool-in-the-request">The trigger: a search in history, no search tool in the request</h2>
<p>Codex has a built-in web search tool. When the model uses it, a <code>web_search_call</code> item goes into the conversation history. Every later request sends that history back.</p>
<p>Normal turns declare the tool in <code>tools</code>, so the upstream accepts the replayed search. A compaction request is different. Codex sends the whole history with <code>tools: []</code>, because a summary doesn't need tools. That applies to local compaction, which Codex runs for custom providers, and to remote compaction v2.</p>
<p>Around October 6, the ChatGPT Codex backend started rejecting requests that replay a <code>web_search_call</code> but don't declare <code>web_search</code>. Developers who captured the raw requests narrowed it down. Changing or removing the search item's ID makes no difference. Declaring only a function tool still fails. Declaring <code>web_search</code> makes the same request succeed.</p>
<p>The same result shows up with the <a href="https://github.com/openai/codex/issues/51962">official, unmodified codex-cli</a> signed in with a ChatGPT account. A history with three search items failed to compact. The same history with only those items removed compacted fine. A second reporter in that thread captured a compaction request with one <code>web_search_call</code> and <code>tools: []</code>. Adding a <code>web_search</code> declaration fixed it, and so did removing the search item.</p>
<p>That explains why it looks like a context-size problem. Compaction only runs on long sessions, and long sessions are the ones most likely to have used search at some point. Web search is also on by default in Codex (the default mode is <code>"cached"</code>), so a session can contain a search the user never asked for.</p>
<h2 id="the-evidence">The evidence</h2>
<p>At least four groups ran A/B tests independently and got the same result. The rows below combine tests posted on the openai/codex tracker and in the issue trackers of several open-source gateway projects. OpenAI hasn't confirmed the rule or responded in any of those threads.</p>
<div class="blog-table-scroll"><table style="display: table; margin-left: auto; margin-right: auto; border-collapse: collapse; background-color: #ffffff; color: #333333;">
  <thead>
    <tr>
      <th style="text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Request history</th>
      <th style="text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Tools declared</th>
      <th style="text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Result</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Messages and reasoning only</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">None</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Completes</td>
    </tr>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Includes function-call output</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">None</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Completes</td>
    </tr>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Includes a web_search_call</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">None</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Fails</td>
    </tr>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Includes a web_search_call</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Function tool only</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Fails</td>
    </tr>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Includes a web_search_call</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">web_search</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Completes</td>
    </tr>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Same, search items removed</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">None</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Completes</td>
    </tr>
  </tbody>
</table></div>
<p>The tests rule out size. One tester set the auto-compaction threshold to 2,000 tokens with <code>-c model_auto_compact_token_limit=2000</code>. A session with no tool use compacted fine. A session that had searched once failed six times in a row. Another tester found that removing reasoning items didn't help, while removing the single search item did.</p>
<p>In one test, the version with <code>web_search</code> declared completed in 2.63 seconds and made zero new search calls. Declaring the tool doesn't make the model search again.</p>
<h2 id="what-the-community-tried-and-what-actually-works">What the community tried, and what actually works</h2>
<p>The LINUX DO thread that prompted this post went through most of the usual guesses:</p>
<div class="blog-table-scroll"><table style="display: table; margin-left: auto; margin-right: auto; border-collapse: collapse; background-color: #ffffff; color: #333333;">
  <thead>
    <tr>
      <th style="text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Suggestion</th>
      <th style="text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Helps?</th>
      <th style="text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Why</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Shrink context, compact earlier</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">No</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Size isn't the trigger</td>
    </tr>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Connect by IP, change nginx</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">No</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">The error comes from upstream</td>
    </tr>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Switch to WebSocket</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Unreliable</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Same request body either way</td>
    </tr>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Log in to ChatGPT directly</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">No</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Official login fails too</td>
    </tr>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">New session, hand over context</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Stopgap</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Breaks again after a search</td>
    </tr>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Disable web search</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Yes, for new sessions</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">No search, no trigger</td>
    </tr>
    <tr>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Declare web_search in the request</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Yes</td>
      <td style="padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;">Satisfies the check</td>
    </tr>
  </tbody>
</table></div>
<p>A few of these need more explanation.</p>
<p><strong>Nginx and IP.</strong> Timeouts and idle connections can cause other "stream disconnected" errors, but they can't produce this message. Maintainers of the proxies involved confirmed the message isn't generated by the proxy; it comes from the upstream provider. If the message is there, the network got the request through and back.</p>
<p><strong>WebSocket.</strong> The gateway patches that worked had to cover the WebSocket path as well as HTTP, because WebSocket requests carry the same body. A session that "recovered" after switching transport most likely had no search in its history.</p>
<p><strong>Official login.</strong> Reports on the openai/codex tracker include the desktop app and codex-cli signed in directly with a ChatGPT account, with no proxy involved. As of October 10, neither Codex 0.162.1 nor the 0.163.0 alphas mention a fix, and the issues have no maintainer response.</p>
<h2 id="what-you-can-do-now">What you can do now</h2>
<h3 id="disable-web-search-for-new-sessions">Disable web search for new sessions</h3>
<p>Turn search off in <code>~/.codex/config.toml</code>:</p>
<pre><code class="language-toml">web_search = "disabled"
</code></pre>
<p>The <a href="https://learn.chatgpt.com/docs/config-file/config-reference">Codex config reference</a> lists four values: <code>disabled</code>, <code>cached</code> (the default), <code>indexed</code> and <code>live</code>. Sessions started with <code>--yolo</code> or another full-access sandbox default to <code>live</code>, so set it explicitly.</p>
<p>Apply this to <strong>new</strong> sessions. An old session already has <code>web_search_call</code> items in its history. With search disabled, normal turns stop declaring the tool too, so those turns may start failing as well. That follows from the rule above, but nobody has reported testing it yet.</p>
<p>The cost is that Codex can't search the web. For a session that needs search, open a separate short one, or have the model write findings to a file that the long session reads.</p>
<h3 id="rescue-a-stuck-session">Rescue a stuck session</h3>
<p>Nothing on your side will make a stuck session compact while the backend behaves this way. To keep the work:</p>
<ol>
<li>Leave the stuck session as it is. Its history is still on disk under <code>~/.codex/sessions/</code>.</li>
<li>Start a new session with web search disabled.</li>
<li>Point it at the old session file, or paste a short handover: the goal, the files changed, decisions made, and what's left.</li>
<li>Stop sending prompts to the old session. Every attempt retries compaction and fails again.</li>
</ol>
<h3 id="if-you-maintain-your-own-gateway">If you maintain your own gateway</h3>
<p>The fix that works follows one rule. If <code>input</code> contains a <code>web_search_call</code> and no <code>web_search*</code> tool is declared, add one. If the caller declared no tools, set <code>tool_choice</code> to <code>"none"</code> so the tool can't run. Leave <code>input</code> alone.</p>
<pre><code class="language-python">def declare_replayed_web_search(body: dict) -&gt; dict:
    """Let the upstream accept a replayed web_search_call in a tool-less request."""
    items = body.get("input")
    if not isinstance(items, list):
        return body
    if not any(isinstance(i, dict) and i.get("type") == "web_search_call" for i in items):
        return body

    tools = body.get("tools") or []
    if any(isinstance(t, dict) and str(t.get("type", "")).startswith("web_search") for t in tools):
        return body

    caller_had_tools = bool(tools)
    # Cached index only: the declaration exists to satisfy the check, not to search.
    body["tools"] = tools + [{"type": "web_search", "external_web_access": False}]
    if not caller_had_tools:
        body["tool_choice"] = "none"
    return body
</code></pre>
<p>Responses Lite requests are an exception. They return a 400 if <code>web_search</code> sits in top-level <code>tools</code>. The working patches put it in the first <code>additional_tools</code> input item instead, and keep any trailing <code>compaction_trigger</code> last. The alternative, stripping search items out of compaction requests, also works, but the summary then loses whatever the search found.</p>
<h2 id="if-youd-rather-not-depend-on-the-subscription-backend">If you'd rather not depend on the subscription backend</h2>
<p>Every report we found goes through ChatGPT's subscription backend, the endpoint Codex uses with a ChatGPT login. Its rules aren't documented, and this one changed without notice.</p>
<p>Codex can also use the public Responses API with an API key. We haven't seen a report of this error on that path, but we haven't run the reproduction there ourselves either, so treat that as an observation, not a guarantee. To set Codex up with an AIHubMix key, follow the <a href="https://docs.aihubmix.com/en/api/Codex-CLI">Codex CLI tutorial</a>:</p>
<pre><code class="language-toml">model = "gpt-6.1-sol"
model_provider = "aihubmix"

[model_providers.aihubmix]
name = "AIHubMix"
base_url = "https://aihubmix.com/v1"
wire_api = "responses"
env_key = "AIHUBMIX_API_KEY"
</code></pre>
<p>API pricing applies per token, not per subscription. Rates are on the <a href="https://aihubmix.com/model/gpt-6.1-sol">gpt-6.1-sol model page</a>.</p>
<h2 id="checklist">Checklist</h2>
<ul>
<li>The error text contains "response protection is unavailable", or compaction fails with "stream closed before response.completed".</li>
<li>Normal turns still work and only compaction fails.</li>
<li>The session used web search at some point, possibly without being asked.</li>
<li>New sessions have web_search set to disabled.</li>
<li>Stuck work has been moved to a new session with a handover note.</li>
<li>A gateway you maintain adds a web_search declaration when the history contains a search.</li>
<li>Nginx and proxy network settings have been left alone. They aren't the cause.</li>
</ul>
<h2 id="faq">FAQ</h2>
<p><strong>What does "response protection is unavailable" mean in Codex?</strong><br>
It's an error from ChatGPT's Codex backend, not from Codex itself or your proxy. Since early October 2026 it appears when a request replays an earlier web search but doesn't declare the web search tool, which is exactly what a compaction request does.</p>
<p><strong>Is my context window too large?</strong><br>
No. Testers reproduced it with a 2,000-token compaction threshold, and sessions of the same size without a search compact normally. It only looks size-related because compaction only runs in long sessions.</p>
<p><strong>Does it affect the official Codex app with a ChatGPT login?</strong><br>
Yes. Users of the desktop app and codex-cli report it on direct ChatGPT logins with no proxy. As of October 10, 2026, no Codex release mentions a fix.</p>
<p><strong>How can I tell whether a session will hit it?</strong><br>
If the session used web search at any point, its next compaction will most likely fail. Codex records each search as a web_search_call item in the session files under the .codex/sessions folder.</p>
<p><strong>Will disabling web search fix a session that's already stuck?</strong><br>
Probably not. The old history still contains the search, and once search is disabled, normal turns may stop declaring the tool and fail too. Use the setting for new sessions and move the work over.</p>
<p><strong>Does switching to WebSocket or changing nginx help?</strong><br>
No. The request body is the same over either transport, and the error comes from upstream, so network settings can't remove it. Other stream errors can come from timeouts, but not this one.</p>
<p><strong>Does it happen when Codex uses an API key instead of a ChatGPT subscription?</strong><br>
All the reports so far involve the subscription backend. No one has reported it on the public Responses API, though that hasn't been tested directly.</p>
<h2 id="keep-reading-the-gpt-61-sol-series">Keep reading: the GPT-6.1 Sol series</h2>
<ul>
<li>If this error showed up right after you switched Codex to GPT-6.1 Sol, the migration guide covers the other changes that can break a setup: <a href="https://aihubmix.com/blog/migrating-to-gpt-6-1-sol-9-things-that-can-go-wrong">Migrating to GPT-6.1 Sol: 9 Things That Can Go Wrong</a></li>
<li>Long agent sessions are where effort settings matter most, for speed and for how fast you approach compaction: <a href="https://aihubmix.com/blog/choosing-a-reasoning-effort-for-gpt-6-1-sol-low-to-max">Choosing a Reasoning Effort for GPT-6.1 Sol: low to max</a></li>
</ul>
<h2 id="sources">Sources</h2>
<ul>
<li><a href="https://github.com/openai/codex/issues/52016">Windows Codex Desktop: context compaction always fails</a> (openai/codex)</li>
<li><a href="https://github.com/openai/codex/issues/51962">Remote compaction fails after resuming hosted web_search_call history</a> (openai/codex)</li>
<li><a href="https://community.openai.com/t/codex-remote-compaction-fails-with-502-response-protection-is-unavailable/1404550">Codex remote compaction fails with 502 "response protection is unavailable"</a> (OpenAI Developer Community)</li>
<li><a href="https://learn.chatgpt.com/docs/config-file/config-reference">Codex configuration reference</a> (OpenAI)</li>
<li><a href="https://docs.aihubmix.com/en/api/Codex-CLI">Codex CLI + AIHubMix integration tutorial</a> (AIHubMix)</li>
</ul>
</article><div class="sc-1c0xtl9-16 hUosnH"><div><span class="brand-logo"><img class="brand-logo-light" src="/brand/light.svg?v=20260909" width="110" height="24" alt="AIHubMix"/></span><p class="sc-1c0xtl9-17 cebqkZ">One gateway to multiple AI providers.
Built for production.</p></div><a href="/" class="sc-1c0xtl9-15 sc-1c0xtl9-18 czYpSp cMkKAz">Visit AIHubMix<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" aria-hidden="true" class="remixicon "><path d="M16.1716 10.9999L10.8076 5.63589L12.2218 4.22168L20 11.9999L12.2218 19.778L10.8076 18.3638L16.1716 12.9999H4V10.9999H16.1716Z"></path></svg></a></div><div class="sc-1c0xtl9-19 DWxSg"><h2 class="sc-1c0xtl9-20 bdVRff">More from the blog</h2><div class="sc-1c0xtl9-21 bXzQsu"><a class="sc-1c0xtl9-22 jlSeMr" href="/blog/gpt-image-2-6-api-tutorial-drafts-finals-and-migration-gotchas" data-discover="true"><div class="sc-1c0xtl9-23 kdkCIq"><img src="https://aihubmix.com/blog-media/images/2026/11/c53fbd60a3eef465.png" alt="GPT Image 2.6 API tutorial: drafts, finals, and migration gotchas" loading="lazy"/></div><div class="sc-1c0xtl9-24 jiOOqg"><h3>GPT Image 2.6 API tutorial: drafts, finals, and migration gotchas</h3><time dateTime="2026-11-05T08:59:05.000+00:00">November 5, 2026</time></div></a><a class="sc-1c0xtl9-22 jlSeMr" href="/blog/nowdex-your-ai-subscription-quotas-on-the-screen-youre-already-holding" data-discover="true"><div class="sc-1c0xtl9-23 kdkCIq"><img src="https://aihubmix.com/blog-media/images/2026/10/417a311fe11d8d19.png" alt="Nowdex: your AI subscription quotas, on the screen you&#x27;re already holding" loading="lazy"/></div><div class="sc-1c0xtl9-24 jiOOqg"><h3>Nowdex: your AI subscription quotas, on the screen you&#x27;re already holding</h3><time dateTime="2026-10-29T07:22:37.000+00:00">October 29, 2026</time></div></a><a class="sc-1c0xtl9-22 jlSeMr" href="/blog/migrating-to-gpt-6-1-terra-fix-the-temperature-400s-move-tools-to-responses-and-set-up-codex" data-discover="true"><div class="sc-1c0xtl9-23 kdkCIq"><img src="https://aihubmix.com/blog-media/images/2026/10/4458c8e0277baec3.png" alt="Migrating to GPT-6.1 Terra: Fix the temperature 400s, Move Tools to Responses, and Set Up Codex" loading="lazy"/></div><div class="sc-1c0xtl9-24 jiOOqg"><h3>Migrating to GPT-6.1 Terra: Fix the temperature 400s, Move Tools to Responses, and Set Up Codex</h3><time dateTime="2026-10-27T06:48:15.000+00:00">October 27, 2026</time></div></a></div></div></div><aside class="sc-1c0xtl9-10 cpcDux"><div class="sc-1c0xtl9-11 hxUGEH">On this page</div><div class="sc-1c0xtl9-12 dmMZCQ"><div class="css-1xohofr ant-anchor-wrapper" style="max-height:100vh"><div class="ant-anchor ant-anchor-fixed"><span class="ant-anchor-ink"></span><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#what-the-failure-looks-like" title="What the failure looks like">What the failure looks like</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#the-trigger-a-search-in-history-no-search-tool-in-the-request" title="The trigger: a search in history, no search tool in the request">The trigger: a search in history, no search tool in the request</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#the-evidence" title="The evidence">The evidence</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#what-the-community-tried-and-what-actually-works" title="What the community tried, and what actually works">What the community tried, and what actually works</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#what-you-can-do-now" title="What you can do now">What you can do now</a><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#disable-web-search-for-new-sessions" title="Disable web search for new sessions">Disable web search for new sessions</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#rescue-a-stuck-session" title="Rescue a stuck session">Rescue a stuck session</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#if-you-maintain-your-own-gateway" title="If you maintain your own gateway">If you maintain your own gateway</a></div></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#if-youd-rather-not-depend-on-the-subscription-backend" title="If you&#x27;d rather not depend on the subscription backend">If you&#x27;d rather not depend on the subscription backend</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#checklist" title="Checklist">Checklist</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#faq" title="FAQ">FAQ</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#keep-reading-the-gpt-61-sol-series" title="Keep reading: the GPT-6.1 Sol series">Keep reading: the GPT-6.1 Sol series</a></div><div class="ant-anchor-link"><a class="ant-anchor-link-title" href="#sources" title="Sources">Sources</a></div></div></div></div><div class="sc-1c0xtl9-13 ifprbj"><span class="brand-logo"><img class="brand-logo-light" src="/brand/light.svg?v=20260909" width="110" height="24" alt="AIHubMix"/></span><p id="blog-cta-headline" class="sc-1c0xtl9-14 gijIP">Use GPT 6.1 Sol on AIHubMix</p><a href="/model/gpt-6.1-sol" aria-describedby="blog-cta-headline" class="sc-1c0xtl9-15 czYpSp">View model &amp; pricing<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" aria-hidden="true" class="remixicon "><path d="M16.1716 10.9999L10.8076 5.63589L12.2218 4.22168L20 11.9999L12.2218 19.778L10.8076 18.3638L16.1716 12.9999H4V10.9999H16.1716Z"></path></svg></a></div></aside></div></div><script id="seo-jsonld-page" type="application/ld+json">{"@context":"https://schema.org","@type":"BlogPosting","headline":"Codex Compaction Fails With \"response protection is unavailable\": It's the Web Search, Not Your Context","description":"Since October 8, 2026, long Codex sessions have been dying the moment they try to compact. The error reads stream disconnected before completion: response…","url":"https://aihubmix.com/blog/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context","mainEntityOfPage":{"@type":"WebPage","@id":"https://aihubmix.com/blog/codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context"},"image":"https://aihubmix.com/blog-media/images/2026/10/b3979112d3018b38.png","inLanguage":"en","publisher":{"@type":"Organization","name":"AIHubMix","url":"https://aihubmix.com","logo":{"@type":"ImageObject","url":"https://aihubmix.com/logo.png"}},"datePublished":"2026-10-10T08:35:09.000+00:00","dateModified":"2026-10-10T08:35:09.000+00:00","author":{"@type":"Organization","name":"AIHubMix","url":"https://aihubmix.com"},"keywords":"Tutorial"}</script><div class="ant-pro-page-container css-1xohofr"><div class="css-1xohofr ant-page-header-no-children"></div><div class="ant-pro-grid-content css-1xohofr ant-pro-grid-content-wide"><div class="ant-pro-grid-content-children css-1xohofr"><div class="css-1xohofr ant-pro-page-container-children-container" style="padding-inline:24px;padding-block:0"><div class="footer"><div class="footer-brand"><div class="footer-brand-name"><span class="brand-logo"><img class="brand-logo-light" src="/brand/light.svg?v=20260909" width="110" height="24" alt="AIHubMix"/></span></div><p class="footer-copyright">© 2023 - 2026 AIHubMix, LLC</p><ul class="footer-social" aria-label="Connect"><li><a href="https://x.com/AiHubMix" target="_blank" rel="noopener noreferrer" aria-label="X" title="X"><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" aria-hidden="true" class="remixicon "><path d="M17.6874 3.0625L12.6907 8.77425L8.37045 3.0625H2.11328L9.58961 12.8387L2.50378 20.9375H5.53795L11.0068 14.6886L15.7863 20.9375H21.8885L14.095 10.6342L20.7198 3.0625H17.6874ZM16.6232 19.1225L5.65436 4.78217H7.45745L18.3034 19.1225H16.6232Z"></path></svg></a></li><li><a href="https://github.com/AIhubmix" target="_blank" rel="noopener noreferrer" aria-label="GitHub" title="GitHub"><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" aria-hidden="true" class="remixicon "><path d="M12.001 2C6.47598 2 2.00098 6.475 2.00098 12C2.00098 16.425 4.86348 20.1625 8.83848 21.4875C9.33848 21.575 9.52598 21.275 9.52598 21.0125C9.52598 20.775 9.51348 19.9875 9.51348 19.15C7.00098 19.6125 6.35098 18.5375 6.15098 17.975C6.03848 17.6875 5.55098 16.8 5.12598 16.5625C4.77598 16.375 4.27598 15.9125 5.11348 15.9C5.90098 15.8875 6.46348 16.625 6.65098 16.925C7.55098 18.4375 8.98848 18.0125 9.56348 17.75C9.65098 17.1 9.91348 16.6625 10.201 16.4125C7.97598 16.1625 5.65098 15.3 5.65098 11.475C5.65098 10.3875 6.03848 9.4875 6.67598 8.7875C6.57598 8.5375 6.22598 7.5125 6.77598 6.1375C6.77598 6.1375 7.61348 5.875 9.52598 7.1625C10.326 6.9375 11.176 6.825 12.026 6.825C12.876 6.825 13.726 6.9375 14.526 7.1625C16.4385 5.8625 17.276 6.1375 17.276 6.1375C17.826 7.5125 17.476 8.5375 17.376 8.7875C18.0135 9.4875 18.401 10.375 18.401 11.475C18.401 15.3125 16.0635 16.1625 13.8385 16.4125C14.201 16.725 14.5135 17.325 14.5135 18.2625C14.5135 19.6 14.501 20.675 14.501 21.0125C14.501 21.275 14.6885 21.5875 15.1885 21.4875C19.259 20.1133 21.9999 16.2963 22.001 12C22.001 6.475 17.526 2 12.001 2Z"></path></svg></a></li><li><a href="https://www.linkedin.com/company/aihubmix/" target="_blank" rel="noopener noreferrer" aria-label="LinkedIn" title="LinkedIn"><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" aria-hidden="true" class="remixicon "><path d="M18.3362 18.339H15.6707V14.1622C15.6707 13.1662 15.6505 11.8845 14.2817 11.8845C12.892 11.8845 12.6797 12.9683 12.6797 14.0887V18.339H10.0142V9.75H12.5747V10.9207H12.6092C12.967 10.2457 13.837 9.53325 15.1367 9.53325C17.8375 9.53325 18.337 11.3108 18.337 13.6245V18.339H18.3362ZM7.00373 8.57475C6.14573 8.57475 5.45648 7.88025 5.45648 7.026C5.45648 6.1725 6.14648 5.47875 7.00373 5.47875C7.85873 5.47875 8.55173 6.1725 8.55173 7.026C8.55173 7.88025 7.85798 8.57475 7.00373 8.57475ZM8.34023 18.339H5.66723V9.75H8.34023V18.339ZM19.6697 3H4.32923C3.59498 3 3.00098 3.5805 3.00098 4.29675V19.7033C3.00098 20.4202 3.59498 21 4.32923 21H19.6675C20.401 21 21.001 20.4202 21.001 19.7033V4.29675C21.001 3.5805 20.401 3 19.6675 3H19.6697Z"></path></svg></a></li><li><a href="https://discord.gg/chAc9ZFcxR" target="_blank" rel="noopener noreferrer" aria-label="Discord" title="Discord"><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" aria-hidden="true" class="remixicon "><path d="M19.3034 5.33716C17.9344 4.71103 16.4805 4.2547 14.9629 4C14.7719 4.32899 14.5596 4.77471 14.411 5.12492C12.7969 4.89144 11.1944 4.89144 9.60255 5.12492C9.45397 4.77471 9.2311 4.32899 9.05068 4C7.52251 4.2547 6.06861 4.71103 4.70915 5.33716C1.96053 9.39111 1.21766 13.3495 1.5891 17.2549C3.41443 18.5815 5.17612 19.388 6.90701 19.9187C7.33151 19.3456 7.71356 18.73 8.04255 18.0827C7.41641 17.8492 6.82211 17.5627 6.24904 17.2231C6.39762 17.117 6.5462 17.0003 6.68416 16.8835C10.1438 18.4648 13.8911 18.4648 17.3082 16.8835C17.4568 17.0003 17.5948 17.117 17.7434 17.2231C17.1703 17.5627 16.576 17.8492 15.9499 18.0827C16.2789 18.73 16.6609 19.3456 17.0854 19.9187C18.8152 19.388 20.5875 18.5815 22.4033 17.2549C22.8596 12.7341 21.6806 8.80747 19.3034 5.33716ZM8.5201 14.8459C7.48007 14.8459 6.63107 13.9014 6.63107 12.7447C6.63107 11.5879 7.45884 10.6434 8.5201 10.6434C9.57071 10.6434 10.4303 11.5879 10.4091 12.7447C10.4091 13.9014 9.57071 14.8459 8.5201 14.8459ZM15.4936 14.8459C14.4535 14.8459 13.6034 13.9014 13.6034 12.7447C13.6034 11.5879 14.4323 10.6434 15.4936 10.6434C16.5442 10.6434 17.4038 11.5879 17.3825 12.7447C17.3825 13.9014 16.5548 14.8459 15.4936 14.8459Z"></path></svg></a></li><li><a href="https://www.youtube.com/@AiHubMixcom" target="_blank" rel="noopener noreferrer" aria-label="YouTube" title="YouTube"><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" aria-hidden="true" class="remixicon "><path d="M12.2439 4C12.778 4.00294 14.1143 4.01586 15.5341 4.07273L16.0375 4.09468C17.467 4.16236 18.8953 4.27798 19.6037 4.4755C20.5486 4.74095 21.2913 5.5155 21.5423 6.49732C21.942 8.05641 21.992 11.0994 21.9982 11.8358L21.9991 11.9884L21.9991 11.9991C21.9991 11.9991 21.9991 12.0028 21.9991 12.0099L21.9982 12.1625C21.992 12.8989 21.942 15.9419 21.5423 17.501C21.2878 18.4864 20.5451 19.261 19.6037 19.5228C18.8953 19.7203 17.467 19.8359 16.0375 19.9036L15.5341 19.9255C14.1143 19.9824 12.778 19.9953 12.2439 19.9983L12.0095 19.9991L11.9991 19.9991C11.9991 19.9991 11.9956 19.9991 11.9887 19.9991L11.7545 19.9983C10.6241 19.9921 5.89772 19.941 4.39451 19.5228C3.4496 19.2573 2.70692 18.4828 2.45587 17.501C2.0562 15.9419 2.00624 12.8989 2 12.1625V11.8358C2.00624 11.0994 2.0562 8.05641 2.45587 6.49732C2.7104 5.51186 3.45308 4.73732 4.39451 4.4755C5.89772 4.05723 10.6241 4.00622 11.7545 4H12.2439ZM9.99911 8.49914V15.4991L15.9991 11.9991L9.99911 8.49914Z"></path></svg></a></li><li><a href="https://aihubmix.medium.com/" target="_blank" rel="noopener noreferrer" aria-label="Medium" title="Medium"><svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" aria-hidden="true" class="remixicon "><path d="M6.15789 3H17.8421C19.5862 3 21 4.41384 21 6.15789V9.52368C20.9185 9.51825 20.8369 9.51611 20.7552 9.51611C20.3527 9.51611 19.8589 9.61374 19.5076 9.79063C19.1075 9.97583 18.7548 10.2528 18.4613 10.6162C17.9888 11.2018 17.7025 11.9931 17.6329 12.8824C17.618 13.059 17.6131 13.2366 17.6163 13.4138C17.6632 15.4279 18.7512 17.0376 20.6837 17.0376C20.7919 17.0376 20.8974 17.0325 21 17.0226V17.8421C21 19.5862 19.5862 21 17.8421 21H6.15789C4.41384 21 3 19.5862 3 17.8421V6.15789C3 4.41384 4.41384 3 6.15789 3ZM21 15.3878V12.6621H19.3473C19.2728 13.9784 19.9927 15.0913 21 15.3878ZM21 12.2813V9.97343C20.92 9.95153 20.8345 9.93978 20.7435 9.93827C19.9294 9.95506 19.4442 10.9302 19.3838 12.2813H21ZM17.6973 7.30004L17.7115 7.29693V7.18701H14.8127L12.1211 13.5132L9.42952 7.18701H6.30572V7.29693L6.31975 7.30004C6.84885 7.41946 7.11748 7.59757 7.11748 8.23987V15.7595C7.11748 16.4018 6.84782 16.5799 6.31871 16.6993L6.30469 16.7024V16.8127H8.42408V16.7028L8.41007 16.6996C7.88095 16.5802 7.61232 16.4021 7.61232 15.7598V8.67605L11.07 16.8127H11.2661L14.8245 8.44914V15.9455C14.7792 16.4528 14.513 16.6095 14.0339 16.7176L14.0197 16.7209V16.83H17.7115V16.7209L17.6973 16.7176C17.2177 16.6095 16.9451 16.4528 16.8998 15.9455L16.8974 8.23987H16.8998C16.8998 7.59757 17.1684 7.41946 17.6973 7.30004Z"></path></svg></a></li></ul></div><div class="footer-columns"><div class="footer-column"><h2 class="footer-column-title">Product</h2><ul class="footer-column-list"><li><a href="/models">Models</a></li><li><a href="/llm-router/auto">LLM Router</a></li><li><a href="/compare">Compare</a></li><li><a href="/authors">Model Authors</a></li><li><a href="/ecosystem">Apps</a></li><li><a href="https://aihubmix.com/playground" target="_blank" rel="noopener noreferrer">Playground</a></li><li><a href="https://skills.aihubmix.com/en/" target="_blank" rel="noopener noreferrer">Skills</a></li><li><a href="https://enterprise.aihubmix.com" target="_blank" rel="noopener noreferrer">Enterprise</a></li></ul></div><div class="footer-column"><h2 class="footer-column-title">Developer</h2><ul class="footer-column-list"><li><a href="https://docs.aihubmix.com/en">Documentation</a></li><li><a href="https://docs.aihubmix.com/en/quick-start">API Reference</a></li><li><a href="/developers">Integration Guide</a></li><li><a href="https://docs.aihubmix.com/en/agents" target="_blank" rel="noopener noreferrer">For AI Agents</a></li><li><a href="https://console.aihubmix.com" target="_blank" rel="noopener noreferrer">Dashboard</a></li><li><a href="/models/retirements">Model Retirements</a></li><li><a href="https://status.aihubmix.com">Status</a></li></ul></div><div class="footer-column"><h2 class="footer-column-title">Company</h2><ul class="footer-column-list"><li><a href="/about">About</a></li><li><a href="/blog">Blog</a></li><li><a href="https://console.aihubmix.com/support">Support</a></li><li><a href="/contact">Contact</a></li></ul></div><div class="footer-column"><h2 class="footer-column-title">Terms &amp; Policies</h2><ul class="footer-column-list"><li><a href="/legal/terms">Terms of Service</a></li><li><a href="/legal/privacy">Privacy Policy</a></li><li><a href="/legal/cookies">Cookie Policy</a></li><li><a href="https://docs.aihubmix.com/en/api/Data-Pravicy">Data Policy</a></li><li><a href="/legal/payment">Payment Notice</a></li><li><a href="/legal/zdr">ZDR Terms</a></li><li><a href="/legal/asynchronous-generation">Async Generation Terms</a></li><li><button type="button" class="footer-privacy-choices">Your privacy choices<span role="img" aria-label="safety-certificate" aria-hidden="true" class="anticon anticon-safety-certificate"><svg viewBox="64 64 896 896" focusable="false" data-icon="safety-certificate" width="1em" height="1em" fill="currentColor" aria-hidden="true"><path d="M866.9 169.9L527.1 54.1C523 52.7 517.5 52 512 52s-11 .7-15.1 2.1L157.1 169.9c-8.3 2.8-15.1 12.4-15.1 21.2v482.4c0 8.8 5.7 20.4 12.6 25.9L499.3 968c3.5 2.7 8 4.1 12.6 4.1s9.2-1.4 12.6-4.1l344.7-268.6c6.9-5.4 12.6-17 12.6-25.9V191.1c.2-8.8-6.6-18.3-14.9-21.2zM810 654.3L512 886.5 214 654.3V226.7l298-101.6 298 101.6v427.6zm-405.8-201c-3-4.1-7.8-6.6-13-6.6H336c-6.5 0-10.3 7.4-6.5 12.7l126.4 174a16.1 16.1 0 0026 0l212.6-292.7c3.8-5.3 0-12.7-6.5-12.7h-55.2c-5.1 0-10 2.5-13 6.6L468.9 542.4l-64.7-89.1z"></path></svg></span></button></li></ul></div></div></div></div></div></div></div></div></div></div></div></main></div></div></div><div id="ahm-mobile-menu" class="ahm-mobile-menu" data-open="false" data-view="root" inert=""><nav class="ahm-mobile-menu-nav" aria-label="Site"><a href="/models" class="ahm-mobile-menu-item" style="--ah-stagger-index:0"><span>Models</span></a><a href="https://aihubmix.com/playground" class="ahm-mobile-menu-item" style="--ah-stagger-index:1" target="_blank" rel="noopener noreferrer"><span>Playground</span></a><a href="/ecosystem" class="ahm-mobile-menu-item" style="--ah-stagger-index:2"><span>Ecosystem</span></a><a href="https://enterprise.aihubmix.com" class="ahm-mobile-menu-item" style="--ah-stagger-index:3" target="_blank" rel="noopener noreferrer"><span>Enterprise</span></a><a href="https://docs.aihubmix.com/en" class="ahm-mobile-menu-item" style="--ah-stagger-index:4" target="_blank" rel="noopener noreferrer"><span>Docs</span></a><a href="https://console.aihubmix.com/statistics" class="ahm-mobile-menu-item" style="--ah-stagger-index:5" target="_blank" rel="noopener noreferrer nofollow"><span>Dashboard</span></a><button type="button" class="ahm-mobile-menu-item ahm-mobile-menu-entry" style="--ah-stagger-index:6"><span>Language</span><span class="ahm-mobile-menu-entry-value">English<svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" width="18" height="18" fill="currentColor" aria-hidden="true" class="remixicon "><path d="M13.1717 12.0007L8.22192 7.05093L9.63614 5.63672L16.0001 12.0007L9.63614 18.3646L8.22192 16.9504L13.1717 12.0007Z"></path></svg></span></button></nav><div class="ahm-mobile-menu-footer"><button type="button" class="ds-button ds-button-primary ahm-mobile-menu-signin">Sign in</button></div></div><script>((storageKey2, restoreKey) => {
    if (!window.history.state || !window.history.state.key) {
      let key = Math.random().toString(32).slice(2);
      window.history.replaceState({ key }, "");
    }
    try {
      let positions = JSON.parse(sessionStorage.getItem(storageKey2) || "{}");
      let storedY = positions[restoreKey || window.history.state.key];
      if (typeof storedY === "number") {
        window.scrollTo(0, storedY);
      }
    } catch (error) {
      console.error(error);
      sessionStorage.removeItem(storageKey2);
    }
  })("react-router-scroll-positions", null)</script><script>window.__reactRouterContext = {"basename":"/","future":{"unstable_optimizeDeps":false,"v8_passThroughRequests":false,"v8_trailingSlashAwareDataRequests":false,"unstable_previewServerPrerendering":false,"v8_middleware":false,"v8_splitRouteModules":false,"v8_viteEnvironmentApi":false},"routeDiscovery":{"mode":"initial"},"ssr":true,"isSpaMode":false};window.__reactRouterContext.stream = new ReadableStream({start(controller){window.__reactRouterContext.streamController = controller;}}).pipeThrough(new TextEncoderStream());</script><script type="module" async="">import "/static/manifest-b20be33c.js";
import * as route0 from "/static/root-Dl-AuaVW.js";
import * as route1 from "/static/blog-BzQtJgIa.js";
  
  window.__reactRouterRouteModules = {"root":route0,"blog":route1};

import("/static/entry.client-D3GyZyxc.js");</script><!--$--><script>window.__reactRouterContext.streamController.enqueue("[{\"_1\":2,\"_3\":-5,\"_4\":-5},\"loaderData\",{\"_5\":6},\"actionData\",\"errors\",\"blog\",{\"_7\":8,\"_9\":10,\"_11\":12,\"_8\":13,\"_14\":15,\"_16\":17,\"_18\":19,\"_20\":10},\"kind\",\"post\",\"locale\",\"en\",\"slug\",\"codex-compaction-fails-with-response-protection-is-unavailable-its-the-web-search-not-your-context\",{\"_11\":12,\"_29\":68,\"_31\":69,\"_33\":34,\"_70\":71,\"_35\":72,\"_37\":-5,\"_38\":34,\"_39\":73,\"_41\":73,\"_42\":57,\"_44\":45,\"_46\":74},\"related\",[25,26,27],\"modelCount\",714,\"ctaModel\",{\"_21\":22,\"_23\":24},\"htmlLang\",\"id\",\"gpt-6.1-sol\",\"name\",\"GPT 6.1 Sol\",{\"_11\":60,\"_29\":61,\"_31\":62,\"_33\":34,\"_35\":63,\"_37\":-5,\"_38\":34,\"_39\":64,\"_41\":65,\"_42\":57,\"_44\":45,\"_46\":66},{\"_11\":51,\"_29\":52,\"_31\":53,\"_33\":34,\"_35\":54,\"_37\":-5,\"_38\":34,\"_39\":55,\"_41\":56,\"_42\":57,\"_44\":45,\"_46\":58},{\"_11\":28,\"_29\":30,\"_31\":32,\"_33\":34,\"_35\":36,\"_37\":-5,\"_38\":34,\"_39\":40,\"_41\":40,\"_42\":43,\"_44\":45,\"_46\":47},\"migrating-to-gpt-6-1-terra-fix-the-temperature-400s-move-tools-to-responses-and-set-up-codex\",\"title\",\"Migrating to GPT-6.1 Terra: Fix the temperature 400s, Move Tools to Responses, and Set Up Codex\",\"excerpt\",\"Switching to GPT-6.1 Terra is a one-line change: set the model to gpt-6.1-terra. What happens next depends on which API route the request takes. On the Responses API, Terra follows OpenAI's rules: reasoning effort works, and temperature or top_p return HTTP 400. On AIHubMix's Chat Completions route, the same temperature is accepted without complaint, and in AIHubMix's checks on 27 October 2026, reasoning_effort made no measurable difference on small prompts.\\n\\n\\nSo the short answer for most teams:\",\"has_custom_excerpt\",false,\"feature_image\",\"https://aihubmix.com/blog-media/images/2026/10/4458c8e0277baec3.png\",\"og_image\",\"featured\",\"published_at\",\"2026-10-27T06:48:15.000+00:00\",\"updated_at\",\"reading_time\",13,\"author\",\"AIHubMix\",\"tags\",[48],{\"_23\":49,\"_11\":50},\"Tutorial\",\"tutorial\",\"nowdex-your-ai-subscription-quotas-on-the-screen-youre-already-holding\",\"Nowdex: your AI subscription quotas, on the screen you're already holding\",\"If you pay for more than one coding agent, you already know the shape of the problem. Claude has a five-hour window and a weekly one. Codex has a weekly quota with reset credits, and a session window on some plans. Cursor counts usage and spend limits. Each of them reports on a different dashboard, each resets on its own schedule, and none of them is on the phone in your pocket.\\n\\n\\nNowdex is an app built around that gap. It collects the remaining usage and reset times of the services you already \",\"https://aihubmix.com/blog-media/images/2026/10/417a311fe11d8d19.png\",\"2026-10-29T07:22:37.000+00:00\",\"2026-10-29T09:44:16.000+00:00\",8,[59],{\"_23\":49,\"_11\":50},\"gpt-image-2-6-api-tutorial-drafts-finals-and-migration-gotchas\",\"GPT Image 2.6 API tutorial: drafts, finals, and migration gotchas\",\"Moving a basic image call from GPT Image 2.5 to 2.6 is a model-ID change. The endpoints are the same, the token rates are the same, and the three recommended sizes are the same. The parts that need attention are Batch, which 2.5 has and 2.6 does not; the Responses image tool, which OpenAI's 2.5 and 2.6 materials describe differently; and the controls — complexity, SVG, GIF, and markup — which are documented for OpenAI's Image API but are not in AIHubMix's published parameter schema yet.\\n\\n\\nThis t\",\"https://aihubmix.com/blog-media/images/2026/11/c53fbd60a3eef465.png\",\"2026-11-05T08:59:05.000+00:00\",\"2026-11-05T10:14:48.000+00:00\",[67],{\"_23\":49,\"_11\":50},\"Codex Compaction Fails With \\\"response protection is unavailable\\\": It's the Web Search, Not Your Context\",\"Since October 8, 2026, long Codex sessions have been dying the moment they try to compact. The error reads stream disconnected before completion: response protection is unavailable, retries don't help, and the conversation can't continue. Most reports involve gpt-6.1-sol, but gpt-6-astra and gpt-5.6-sol fail the same way. It shows up behind self-hosted proxies, and it also shows up in the official Codex app with a direct ChatGPT login.\\n\\n\\nThe short answer: the context isn't too big, and your netw\",\"html\",\"\u003cp\u003eSince October 8, 2026, long Codex sessions have been dying the moment they try to compact. The error reads \u003ccode\u003estream disconnected before completion: response protection is unavailable\u003c/code\u003e, retries don't help, and the conversation can't continue. Most reports involve gpt-6.1-sol, but gpt-6-astra and gpt-5.6-sol fail the same way. It shows up behind self-hosted proxies, and it also shows up in the \u003ca href=\\\"https://github.com/openai/codex/issues/52016\\\"\u003eofficial Codex app with a direct ChatGPT login\u003c/a\u003e.\u003c/p\u003e\\n\u003cp\u003eThe short answer: the context isn't too big, and your network isn't the problem. ChatGPT's Codex backend now rejects any request that replays an earlier web search in its history without also declaring the web search tool. Codex's compaction request declares no tools at all. So a single web search early in a session is enough to make every later compaction fail.\u003c/p\u003e\\n\u003cp\u003eWhat to do right now:\u003c/p\u003e\\n\u003cul\u003e\\n\u003cli\u003e\u003cstrong\u003eNew sessions\u003c/strong\u003e: set \u003ccode\u003eweb_search = \\\"disabled\\\"\u003c/code\u003e until the backend or Codex changes.\u003c/li\u003e\\n\u003cli\u003e\u003cstrong\u003eStuck sessions\u003c/strong\u003e: move the work into a fresh session. The old one won't compact.\u003c/li\u003e\\n\u003cli\u003e\u003cstrong\u003eIf you maintain your own gateway\u003c/strong\u003e in front of Codex: add a web search declaration when the history contains a search. The code is below.\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003cp\u003eThe rest of this post explains how the trigger was found, which community fixes don't work, and how to rescue a stuck session.\u003c/p\u003e\\n\u003ch2 id=\\\"what-the-failure-looks-like\\\"\u003eWhat the failure looks like\u003c/h2\u003e\\n\u003cp\u003eYou'll see one of these in Codex:\u003c/p\u003e\\n\u003cpre\u003e\u003ccode class=\\\"language-text\\\"\u003estream disconnected before completion: response protection is unavailable\\nError running remote compact task: stream disconnected before completion: stream closed before response.completed\\n\u003c/code\u003e\u003c/pre\u003e\\n\u003cp\u003eThe second message is the generic version. Codex doesn't always show the upstream error, so a compaction that fails with \\\"stream closed before response.completed\\\" can be the same problem. Codex's local log often has \u003ccode\u003eFailed to run pre-sampling compact\u003c/code\u003e next to it.\u003c/p\u003e\\n\u003cp\u003eUnderneath, the upstream sends one of two things. Sometimes it's an HTTP 502 with this body, which a ChatGPT Plus user on gpt-6.1-sol also posted to \u003ca href=\\\"https://community.openai.com/t/codex-remote-compaction-fails-with-502-response-protection-is-unavailable/1404550\\\"\u003eOpenAI's developer forum\u003c/a\u003e:\u003c/p\u003e\\n\u003cpre\u003e\u003ccode class=\\\"language-json\\\"\u003e{\\\"message\\\": \\\"response protection is unavailable\\\", \\\"type\\\": \\\"internal_error\\\"}\\n\u003c/code\u003e\u003c/pre\u003e\\n\u003cp\u003eOther times it's an HTTP 200 whose stream ends in a \u003ccode\u003eresponse.failed\u003c/code\u003e event with \u003ccode\u003ecode: \\\"upstream_error\\\"\u003c/code\u003e and no \u003ccode\u003eresponse.completed\u003c/code\u003e. Anything that only checks the HTTP status misses the second form and reports it as a stream that ended early.\u003c/p\u003e\\n\u003cp\u003eThe pattern is the same everywhere:\u003c/p\u003e\\n\u003cul\u003e\\n\u003cli\u003eNormal turns keep working. Only compaction fails.\u003c/li\u003e\\n\u003cli\u003eCodex retries about five times, then gives up. In one gateway's logs, each failed attempt took 2 to 13 seconds and recorded zero tokens.\u003c/li\u003e\\n\u003cli\u003eResuming the session runs into the same compaction, so the session stays stuck.\u003c/li\u003e\\n\u003cli\u003eA fresh session works until it hits the same conditions.\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch2 id=\\\"the-trigger-a-search-in-history-no-search-tool-in-the-request\\\"\u003eThe trigger: a search in history, no search tool in the request\u003c/h2\u003e\\n\u003cp\u003eCodex has a built-in web search tool. When the model uses it, a \u003ccode\u003eweb_search_call\u003c/code\u003e item goes into the conversation history. Every later request sends that history back.\u003c/p\u003e\\n\u003cp\u003eNormal turns declare the tool in \u003ccode\u003etools\u003c/code\u003e, so the upstream accepts the replayed search. A compaction request is different. Codex sends the whole history with \u003ccode\u003etools: []\u003c/code\u003e, because a summary doesn't need tools. That applies to local compaction, which Codex runs for custom providers, and to remote compaction v2.\u003c/p\u003e\\n\u003cp\u003eAround October 6, the ChatGPT Codex backend started rejecting requests that replay a \u003ccode\u003eweb_search_call\u003c/code\u003e but don't declare \u003ccode\u003eweb_search\u003c/code\u003e. Developers who captured the raw requests narrowed it down. Changing or removing the search item's ID makes no difference. Declaring only a function tool still fails. Declaring \u003ccode\u003eweb_search\u003c/code\u003e makes the same request succeed.\u003c/p\u003e\\n\u003cp\u003eThe same result shows up with the \u003ca href=\\\"https://github.com/openai/codex/issues/51962\\\"\u003eofficial, unmodified codex-cli\u003c/a\u003e signed in with a ChatGPT account. A history with three search items failed to compact. The same history with only those items removed compacted fine. A second reporter in that thread captured a compaction request with one \u003ccode\u003eweb_search_call\u003c/code\u003e and \u003ccode\u003etools: []\u003c/code\u003e. Adding a \u003ccode\u003eweb_search\u003c/code\u003e declaration fixed it, and so did removing the search item.\u003c/p\u003e\\n\u003cp\u003eThat explains why it looks like a context-size problem. Compaction only runs on long sessions, and long sessions are the ones most likely to have used search at some point. Web search is also on by default in Codex (the default mode is \u003ccode\u003e\\\"cached\\\"\u003c/code\u003e), so a session can contain a search the user never asked for.\u003c/p\u003e\\n\u003ch2 id=\\\"the-evidence\\\"\u003eThe evidence\u003c/h2\u003e\\n\u003cp\u003eAt least four groups ran A/B tests independently and got the same result. The rows below combine tests posted on the openai/codex tracker and in the issue trackers of several open-source gateway projects. OpenAI hasn't confirmed the rule or responded in any of those threads.\u003c/p\u003e\\n\u003ctable style=\\\"display: table; margin-left: auto; margin-right: auto; border-collapse: collapse; background-color: #ffffff; color: #333333;\\\"\u003e\\n  \u003cthead\u003e\\n    \u003ctr\u003e\\n      \u003cth style=\\\"text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eRequest history\u003c/th\u003e\\n      \u003cth style=\\\"text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eTools declared\u003c/th\u003e\\n      \u003cth style=\\\"text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eResult\u003c/th\u003e\\n    \u003c/tr\u003e\\n  \u003c/thead\u003e\\n  \u003ctbody\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eMessages and reasoning only\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eNone\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eCompletes\u003c/td\u003e\\n    \u003c/tr\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eIncludes function-call output\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eNone\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eCompletes\u003c/td\u003e\\n    \u003c/tr\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eIncludes a web_search_call\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eNone\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eFails\u003c/td\u003e\\n    \u003c/tr\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eIncludes a web_search_call\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eFunction tool only\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eFails\u003c/td\u003e\\n    \u003c/tr\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eIncludes a web_search_call\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eweb_search\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eCompletes\u003c/td\u003e\\n    \u003c/tr\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eSame, search items removed\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eNone\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eCompletes\u003c/td\u003e\\n    \u003c/tr\u003e\\n  \u003c/tbody\u003e\\n\u003c/table\u003e\\n\u003cp\u003eThe tests rule out size. One tester set the auto-compaction threshold to 2,000 tokens with \u003ccode\u003e-c model_auto_compact_token_limit=2000\u003c/code\u003e. A session with no tool use compacted fine. A session that had searched once failed six times in a row. Another tester found that removing reasoning items didn't help, while removing the single search item did.\u003c/p\u003e\\n\u003cp\u003eIn one test, the version with \u003ccode\u003eweb_search\u003c/code\u003e declared completed in 2.63 seconds and made zero new search calls. Declaring the tool doesn't make the model search again.\u003c/p\u003e\\n\u003ch2 id=\\\"what-the-community-tried-and-what-actually-works\\\"\u003eWhat the community tried, and what actually works\u003c/h2\u003e\\n\u003cp\u003eThe LINUX DO thread that prompted this post went through most of the usual guesses:\u003c/p\u003e\\n\u003ctable style=\\\"display: table; margin-left: auto; margin-right: auto; border-collapse: collapse; background-color: #ffffff; color: #333333;\\\"\u003e\\n  \u003cthead\u003e\\n    \u003ctr\u003e\\n      \u003cth style=\\\"text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eSuggestion\u003c/th\u003e\\n      \u003cth style=\\\"text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eHelps?\u003c/th\u003e\\n      \u003cth style=\\\"text-align: left; padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eWhy\u003c/th\u003e\\n    \u003c/tr\u003e\\n  \u003c/thead\u003e\\n  \u003ctbody\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eShrink context, compact earlier\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eNo\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eSize isn't the trigger\u003c/td\u003e\\n    \u003c/tr\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eConnect by IP, change nginx\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eNo\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eThe error comes from upstream\u003c/td\u003e\\n    \u003c/tr\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eSwitch to WebSocket\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eUnreliable\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eSame request body either way\u003c/td\u003e\\n    \u003c/tr\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eLog in to ChatGPT directly\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eNo\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eOfficial login fails too\u003c/td\u003e\\n    \u003c/tr\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eNew session, hand over context\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eStopgap\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eBreaks again after a search\u003c/td\u003e\\n    \u003c/tr\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eDisable web search\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eYes, for new sessions\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eNo search, no trigger\u003c/td\u003e\\n    \u003c/tr\u003e\\n    \u003ctr\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eDeclare web_search in the request\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eYes\u003c/td\u003e\\n      \u003ctd style=\\\"padding: 10px 12px; background-color: #ffffff; color: #333333; border: 1px solid #d0d0d0;\\\"\u003eSatisfies the check\u003c/td\u003e\\n    \u003c/tr\u003e\\n  \u003c/tbody\u003e\\n\u003c/table\u003e\\n\u003cp\u003eA few of these need more explanation.\u003c/p\u003e\\n\u003cp\u003e\u003cstrong\u003eNginx and IP.\u003c/strong\u003e Timeouts and idle connections can cause other \\\"stream disconnected\\\" errors, but they can't produce this message. Maintainers of the proxies involved confirmed the message isn't generated by the proxy; it comes from the upstream provider. If the message is there, the network got the request through and back.\u003c/p\u003e\\n\u003cp\u003e\u003cstrong\u003eWebSocket.\u003c/strong\u003e The gateway patches that worked had to cover the WebSocket path as well as HTTP, because WebSocket requests carry the same body. A session that \\\"recovered\\\" after switching transport most likely had no search in its history.\u003c/p\u003e\\n\u003cp\u003e\u003cstrong\u003eOfficial login.\u003c/strong\u003e Reports on the openai/codex tracker include the desktop app and codex-cli signed in directly with a ChatGPT account, with no proxy involved. As of October 10, neither Codex 0.162.1 nor the 0.163.0 alphas mention a fix, and the issues have no maintainer response.\u003c/p\u003e\\n\u003ch2 id=\\\"what-you-can-do-now\\\"\u003eWhat you can do now\u003c/h2\u003e\\n\u003ch3 id=\\\"disable-web-search-for-new-sessions\\\"\u003eDisable web search for new sessions\u003c/h3\u003e\\n\u003cp\u003eTurn search off in \u003ccode\u003e~/.codex/config.toml\u003c/code\u003e:\u003c/p\u003e\\n\u003cpre\u003e\u003ccode class=\\\"language-toml\\\"\u003eweb_search = \\\"disabled\\\"\\n\u003c/code\u003e\u003c/pre\u003e\\n\u003cp\u003eThe \u003ca href=\\\"https://learn.chatgpt.com/docs/config-file/config-reference\\\"\u003eCodex config reference\u003c/a\u003e lists four values: \u003ccode\u003edisabled\u003c/code\u003e, \u003ccode\u003ecached\u003c/code\u003e (the default), \u003ccode\u003eindexed\u003c/code\u003e and \u003ccode\u003elive\u003c/code\u003e. Sessions started with \u003ccode\u003e--yolo\u003c/code\u003e or another full-access sandbox default to \u003ccode\u003elive\u003c/code\u003e, so set it explicitly.\u003c/p\u003e\\n\u003cp\u003eApply this to \u003cstrong\u003enew\u003c/strong\u003e sessions. An old session already has \u003ccode\u003eweb_search_call\u003c/code\u003e items in its history. With search disabled, normal turns stop declaring the tool too, so those turns may start failing as well. That follows from the rule above, but nobody has reported testing it yet.\u003c/p\u003e\\n\u003cp\u003eThe cost is that Codex can't search the web. For a session that needs search, open a separate short one, or have the model write findings to a file that the long session reads.\u003c/p\u003e\\n\u003ch3 id=\\\"rescue-a-stuck-session\\\"\u003eRescue a stuck session\u003c/h3\u003e\\n\u003cp\u003eNothing on your side will make a stuck session compact while the backend behaves this way. To keep the work:\u003c/p\u003e\\n\u003col\u003e\\n\u003cli\u003eLeave the stuck session as it is. Its history is still on disk under \u003ccode\u003e~/.codex/sessions/\u003c/code\u003e.\u003c/li\u003e\\n\u003cli\u003eStart a new session with web search disabled.\u003c/li\u003e\\n\u003cli\u003ePoint it at the old session file, or paste a short handover: the goal, the files changed, decisions made, and what's left.\u003c/li\u003e\\n\u003cli\u003eStop sending prompts to the old session. Every attempt retries compaction and fails again.\u003c/li\u003e\\n\u003c/ol\u003e\\n\u003ch3 id=\\\"if-you-maintain-your-own-gateway\\\"\u003eIf you maintain your own gateway\u003c/h3\u003e\\n\u003cp\u003eThe fix that works follows one rule. If \u003ccode\u003einput\u003c/code\u003e contains a \u003ccode\u003eweb_search_call\u003c/code\u003e and no \u003ccode\u003eweb_search*\u003c/code\u003e tool is declared, add one. If the caller declared no tools, set \u003ccode\u003etool_choice\u003c/code\u003e to \u003ccode\u003e\\\"none\\\"\u003c/code\u003e so the tool can't run. Leave \u003ccode\u003einput\u003c/code\u003e alone.\u003c/p\u003e\\n\u003cpre\u003e\u003ccode class=\\\"language-python\\\"\u003edef declare_replayed_web_search(body: dict) -\u0026gt; dict:\\n    \\\"\\\"\\\"Let the upstream accept a replayed web_search_call in a tool-less request.\\\"\\\"\\\"\\n    items = body.get(\\\"input\\\")\\n    if not isinstance(items, list):\\n        return body\\n    if not any(isinstance(i, dict) and i.get(\\\"type\\\") == \\\"web_search_call\\\" for i in items):\\n        return body\\n\\n    tools = body.get(\\\"tools\\\") or []\\n    if any(isinstance(t, dict) and str(t.get(\\\"type\\\", \\\"\\\")).startswith(\\\"web_search\\\") for t in tools):\\n        return body\\n\\n    caller_had_tools = bool(tools)\\n    # Cached index only: the declaration exists to satisfy the check, not to search.\\n    body[\\\"tools\\\"] = tools + [{\\\"type\\\": \\\"web_search\\\", \\\"external_web_access\\\": False}]\\n    if not caller_had_tools:\\n        body[\\\"tool_choice\\\"] = \\\"none\\\"\\n    return body\\n\u003c/code\u003e\u003c/pre\u003e\\n\u003cp\u003eResponses Lite requests are an exception. They return a 400 if \u003ccode\u003eweb_search\u003c/code\u003e sits in top-level \u003ccode\u003etools\u003c/code\u003e. The working patches put it in the first \u003ccode\u003eadditional_tools\u003c/code\u003e input item instead, and keep any trailing \u003ccode\u003ecompaction_trigger\u003c/code\u003e last. The alternative, stripping search items out of compaction requests, also works, but the summary then loses whatever the search found.\u003c/p\u003e\\n\u003ch2 id=\\\"if-youd-rather-not-depend-on-the-subscription-backend\\\"\u003eIf you'd rather not depend on the subscription backend\u003c/h2\u003e\\n\u003cp\u003eEvery report we found goes through ChatGPT's subscription backend, the endpoint Codex uses with a ChatGPT login. Its rules aren't documented, and this one changed without notice.\u003c/p\u003e\\n\u003cp\u003eCodex can also use the public Responses API with an API key. We haven't seen a report of this error on that path, but we haven't run the reproduction there ourselves either, so treat that as an observation, not a guarantee. To set Codex up with an AIHubMix key, follow the \u003ca href=\\\"https://docs.aihubmix.com/en/api/Codex-CLI\\\"\u003eCodex CLI tutorial\u003c/a\u003e:\u003c/p\u003e\\n\u003cpre\u003e\u003ccode class=\\\"language-toml\\\"\u003emodel = \\\"gpt-6.1-sol\\\"\\nmodel_provider = \\\"aihubmix\\\"\\n\\n[model_providers.aihubmix]\\nname = \\\"AIHubMix\\\"\\nbase_url = \\\"https://aihubmix.com/v1\\\"\\nwire_api = \\\"responses\\\"\\nenv_key = \\\"AIHUBMIX_API_KEY\\\"\\n\u003c/code\u003e\u003c/pre\u003e\\n\u003cp\u003eAPI pricing applies per token, not per subscription. Rates are on the \u003ca href=\\\"https://aihubmix.com/model/gpt-6.1-sol\\\"\u003egpt-6.1-sol model page\u003c/a\u003e.\u003c/p\u003e\\n\u003ch2 id=\\\"checklist\\\"\u003eChecklist\u003c/h2\u003e\\n\u003cul\u003e\\n\u003cli\u003eThe error text contains \\\"response protection is unavailable\\\", or compaction fails with \\\"stream closed before response.completed\\\".\u003c/li\u003e\\n\u003cli\u003eNormal turns still work and only compaction fails.\u003c/li\u003e\\n\u003cli\u003eThe session used web search at some point, possibly without being asked.\u003c/li\u003e\\n\u003cli\u003eNew sessions have web_search set to disabled.\u003c/li\u003e\\n\u003cli\u003eStuck work has been moved to a new session with a handover note.\u003c/li\u003e\\n\u003cli\u003eA gateway you maintain adds a web_search declaration when the history contains a search.\u003c/li\u003e\\n\u003cli\u003eNginx and proxy network settings have been left alone. They aren't the cause.\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch2 id=\\\"faq\\\"\u003eFAQ\u003c/h2\u003e\\n\u003cp\u003e\u003cstrong\u003eWhat does \\\"response protection is unavailable\\\" mean in Codex?\u003c/strong\u003e\u003cbr\u003e\\nIt's an error from ChatGPT's Codex backend, not from Codex itself or your proxy. Since early October 2026 it appears when a request replays an earlier web search but doesn't declare the web search tool, which is exactly what a compaction request does.\u003c/p\u003e\\n\u003cp\u003e\u003cstrong\u003eIs my context window too large?\u003c/strong\u003e\u003cbr\u003e\\nNo. Testers reproduced it with a 2,000-token compaction threshold, and sessions of the same size without a search compact normally. It only looks size-related because compaction only runs in long sessions.\u003c/p\u003e\\n\u003cp\u003e\u003cstrong\u003eDoes it affect the official Codex app with a ChatGPT login?\u003c/strong\u003e\u003cbr\u003e\\nYes. Users of the desktop app and codex-cli report it on direct ChatGPT logins with no proxy. As of October 10, 2026, no Codex release mentions a fix.\u003c/p\u003e\\n\u003cp\u003e\u003cstrong\u003eHow can I tell whether a session will hit it?\u003c/strong\u003e\u003cbr\u003e\\nIf the session used web search at any point, its next compaction will most likely fail. Codex records each search as a web_search_call item in the session files under the .codex/sessions folder.\u003c/p\u003e\\n\u003cp\u003e\u003cstrong\u003eWill disabling web search fix a session that's already stuck?\u003c/strong\u003e\u003cbr\u003e\\nProbably not. The old history still contains the search, and once search is disabled, normal turns may stop declaring the tool and fail too. Use the setting for new sessions and move the work over.\u003c/p\u003e\\n\u003cp\u003e\u003cstrong\u003eDoes switching to WebSocket or changing nginx help?\u003c/strong\u003e\u003cbr\u003e\\nNo. The request body is the same over either transport, and the error comes from upstream, so network settings can't remove it. Other stream errors can come from timeouts, but not this one.\u003c/p\u003e\\n\u003cp\u003e\u003cstrong\u003eDoes it happen when Codex uses an API key instead of a ChatGPT subscription?\u003c/strong\u003e\u003cbr\u003e\\nAll the reports so far involve the subscription backend. No one has reported it on the public Responses API, though that hasn't been tested directly.\u003c/p\u003e\\n\u003ch2 id=\\\"keep-reading-the-gpt-61-sol-series\\\"\u003eKeep reading: the GPT-6.1 Sol series\u003c/h2\u003e\\n\u003cul\u003e\\n\u003cli\u003eIf this error showed up right after you switched Codex to GPT-6.1 Sol, the migration guide covers the other changes that can break a setup: \u003ca href=\\\"https://aihubmix.com/blog/migrating-to-gpt-6-1-sol-9-things-that-can-go-wrong\\\"\u003eMigrating to GPT-6.1 Sol: 9 Things That Can Go Wrong\u003c/a\u003e\u003c/li\u003e\\n\u003cli\u003eLong agent sessions are where effort settings matter most, for speed and for how fast you approach compaction: \u003ca href=\\\"https://aihubmix.com/blog/choosing-a-reasoning-effort-for-gpt-6-1-sol-low-to-max\\\"\u003eChoosing a Reasoning Effort for GPT-6.1 Sol: low to max\u003c/a\u003e\u003c/li\u003e\\n\u003c/ul\u003e\\n\u003ch2 id=\\\"sources\\\"\u003eSources\u003c/h2\u003e\\n\u003cul\u003e\\n\u003cli\u003e\u003ca href=\\\"https://github.com/openai/codex/issues/52016\\\"\u003eWindows Codex Desktop: context compaction always fails\u003c/a\u003e (openai/codex)\u003c/li\u003e\\n\u003cli\u003e\u003ca href=\\\"https://github.com/openai/codex/issues/51962\\\"\u003eRemote compaction fails after resuming hosted web_search_call history\u003c/a\u003e (openai/codex)\u003c/li\u003e\\n\u003cli\u003e\u003ca href=\\\"https://community.openai.com/t/codex-remote-compaction-fails-with-502-response-protection-is-unavailable/1404550\\\"\u003eCodex remote compaction fails with 502 \\\"response protection is unavailable\\\"\u003c/a\u003e (OpenAI Developer Community)\u003c/li\u003e\\n\u003cli\u003e\u003ca href=\\\"https://learn.chatgpt.com/docs/config-file/config-reference\\\"\u003eCodex configuration reference\u003c/a\u003e (OpenAI)\u003c/li\u003e\\n\u003cli\u003e\u003ca href=\\\"https://docs.aihubmix.com/en/api/Codex-CLI\\\"\u003eCodex CLI + AIHubMix integration tutorial\u003c/a\u003e (AIHubMix)\u003c/li\u003e\\n\u003c/ul\u003e\\n\",\"https://aihubmix.com/blog-media/images/2026/10/b3979112d3018b38.png\",\"2026-10-10T08:35:09.000+00:00\",[75],{\"_23\":49,\"_11\":50}]\n");</script><!--$--><script>window.__reactRouterContext.streamController.close();</script><!--/$--><!--/$--></body></html>