html{color-scheme:light}body{margin:0;background:#f4f5f7}.ant-tabs .ant-tabs-nav:before{border-block-color:rgba(0,0,0,.12)}.ant-tabs.waves-page-tabs .ant-tabs-nav:before{border-block-color:#cccccc}.ant-drawer-header{background:#fafafa}.waves-label-action .ant-form-item-label,.waves-label-action .ant-form-item-label>label{width:100%}@keyframes waves-pulse{50%{opacity:.45}}.waves-pulse{animation:waves-pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion:reduce){.waves-pulse{animation:none}}

/* !important throughout: these rules override antd component styles and inline
   `style={{…}}` props on the shell (Sider display, Content padding, the topbar's
   inline display, the backup-code grid's inline columns) — external CSS cannot
   beat an inline style without it. This is a deliberate, contained use. */@media (max-width:767.98px){.waves-sider{display:none!important}.waves-content{padding:16px!important}.waves-backup-codes{grid-template-columns:repeat(2,minmax(0,1fr))!important}.waves-assistant-panel{height:calc(100dvh - 170px)!important;min-height:340px}.waves-wizard-steps .ant-steps-item-title{display:none!important}.waves-wizard-stepline{display:block!important}}@media (max-width:767.98px) and (pointer:coarse){.ant-input-number-input,.ant-picker-input>input,.ant-select-input,.cm-editor .cm-content,input.ant-input,textarea.ant-input{font-size:16px!important}}@media (min-width:768px){.waves-topbar{display:none!important}}.waves-login-row{display:flex;align-items:center;justify-content:center;gap:56px;width:100%;max-width:940px}.waves-login-card{flex:0 0 384px;width:384px}.waves-login-pitch{flex:1 1 auto;max-width:420px;color:#ffffff}.waves-login-pitch h2{margin:0 0 16px;font-size:30px;line-height:1.22;font-weight:500;letter-spacing:-.02em}.waves-login-pitch p{margin:0 0 24px;font-size:15px;line-height:1.65;color:rgba(255,255,255,.72)}.waves-login-pitch p a{color:#ffffff;text-decoration:underline;text-underline-offset:2px}.waves-login-pitch p a:hover{color:#d2e4ee}.waves-login-pitch ul{list-style:none;margin:0 0 28px;padding:0}.waves-login-pitch li{display:flex;align-items:baseline;gap:12px;margin-bottom:13px;line-height:1.5;color:rgba(255,255,255,.88)}.waves-login-pitch li .anticon{color:#d2e4ee;font-size:13px}.waves-login-pitch li strong{font-weight:600;color:#ffffff}@media (max-width:899.98px){.waves-login-row{flex-direction:column;gap:28px;max-width:384px}.waves-login-card{flex:0 0 auto;width:100%}.waves-login-pitch{max-width:100%}.waves-login-pitch h2{font-size:24px}}:root{--waves-info-bg:#eef6fa;--waves-info-border:#a8cfe0;--waves-info-icon:#2a5d6e}.ant-alert.ant-alert-info{background:var(--waves-info-bg)!important;border-color:var(--waves-info-border)!important}.ant-alert.ant-alert-info .ant-alert-icon{color:var(--waves-info-icon)!important}:root{--waves-chip-success-bg:#fafff6;--waves-chip-success-border:#52c41a;--waves-chip-success-text:#237804;--waves-chip-danger-bg:#fff8f8;--waves-chip-danger-border:#ff4d4f;--waves-chip-danger-text:#cf1322;--waves-chip-warn-bg:#fffdf2;--waves-chip-warn-border:#faad14;--waves-chip-warn-text:#874d00;--waves-chip-live-bg:#e8f2f6;--waves-chip-live-border:#5b93ab;--waves-chip-live-text:#1c4655;--waves-chip-neutral-bg:#fcfcfc;--waves-chip-neutral-border:#bfbfbf;--waves-chip-neutral-text:rgba(0,0,0,0.88)}.ant-tag.waves-chip{border-style:solid!important;border-width:1px!important}.ant-tag.waves-chip-success{background:var(--waves-chip-success-bg)!important;border-color:var(--waves-chip-success-border)!important;color:var(--waves-chip-success-text)!important}.ant-tag.waves-chip-danger{background:var(--waves-chip-danger-bg)!important;border-color:var(--waves-chip-danger-border)!important;color:var(--waves-chip-danger-text)!important}.ant-tag.waves-chip-warn{background:var(--waves-chip-warn-bg)!important;border-color:var(--waves-chip-warn-border)!important;color:var(--waves-chip-warn-text)!important}.ant-tag.waves-chip-live{background:var(--waves-chip-live-bg)!important;border-color:var(--waves-chip-live-border)!important;color:var(--waves-chip-live-text)!important}.ant-tag.waves-chip-neutral{background:var(--waves-chip-neutral-bg)!important;border-color:var(--waves-chip-neutral-border)!important;color:var(--waves-chip-neutral-text)!important}.ant-tag:where(:not(.ant-tag-has-color)){background:var(--waves-chip-neutral-bg)!important;border-color:var(--waves-chip-neutral-border)!important;color:var(--waves-chip-neutral-text)!important}.ant-tag.ant-tag-green,.ant-tag.ant-tag-lime,.ant-tag.ant-tag-success{background:var(--waves-chip-success-bg)!important;border-color:var(--waves-chip-success-border)!important;color:var(--waves-chip-success-text)!important}.ant-tag.ant-tag-error,.ant-tag.ant-tag-red,.ant-tag.ant-tag-volcano{background:var(--waves-chip-danger-bg)!important;border-color:var(--waves-chip-danger-border)!important;color:var(--waves-chip-danger-text)!important}.ant-tag.ant-tag-gold,.ant-tag.ant-tag-orange,.ant-tag.ant-tag-warning{background:var(--waves-chip-warn-bg)!important;border-color:var(--waves-chip-warn-border)!important;color:var(--waves-chip-warn-text)!important}.ant-tag.ant-tag-blue,.ant-tag.ant-tag-cyan,.ant-tag.ant-tag-geekblue,.ant-tag.ant-tag-processing{background:var(--waves-chip-live-bg)!important;border-color:var(--waves-chip-live-border)!important;color:var(--waves-chip-live-text)!important}.waves-live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--waves-chip-live-text);vertical-align:middle;margin-bottom:1px;-webkit-margin-end:5px;margin-inline-end:5px}.ant-select-single.ant-select-show-search,.ant-select-single.ant-select-show-search .ant-select-content,.ant-select-single.ant-select-show-search .ant-select-input,.ant-select-single.ant-select-show-search .ant-select-selector,.ant-select-single.ant-select-show-search .ant-select-selector .ant-select-selection-search,.ant-select-single.ant-select-show-search .ant-select-selector input,.ant-select-single.ant-select-show-search .ant-select-suffix{cursor:pointer!important}.ant-select-single.ant-select-disabled.ant-select-show-search,.ant-select-single.ant-select-disabled.ant-select-show-search .ant-select-content,.ant-select-single.ant-select-disabled.ant-select-show-search .ant-select-input,.ant-select-single.ant-select-disabled.ant-select-show-search .ant-select-selector,.ant-select-single.ant-select-disabled.ant-select-show-search .ant-select-selector input,.ant-select-single.ant-select-disabled.ant-select-show-search .ant-select-suffix{cursor:not-allowed!important}.ant-select-single.ant-select-show-search:not(.ant-select-open) .ant-select-input,.ant-select-single.ant-select-show-search:not(.ant-select-open) .ant-select-selector input{caret-color:transparent}