:root { --color-primary-100: #008771; --dark-color-background: #0a1222; --dark-color-surface-100: #151f31; --dark-color-surface-200: #222d42; --dark-color-surface-300: #2c3950; --dark-color-surface-400: rgba(65, 85, 119, .5); --dark-color-surface-500: #2c3950; --dark-color-surface-600: #313f5a; --dark-color-surface-700: #111929; --dark-color-surface-700-rgb: 17, 25, 41; --dark-color-table-hover: rgba(44, 57, 80, .2); --dark-color-text-primary: rgba(255, 255, 255, .75); --dark-color-stroke: #2c3950; --dark-color-btn-danger: #cd3838; --dark-color-btn-danger-border: transparent; --dark-color-btn-danger-hover: #e94b4b; --dark-color-tag-bg: rgba(255, 255, 255, .05); --dark-color-tag-border: rgba(255, 255, 255, .15); --dark-color-tag-color: rgba(255, 255, 255, .75); --dark-color-tag-green-bg: 17, 36, 33; --dark-color-tag-green-border: 25, 81, 65; --dark-color-tag-green-color: #3ad3ba; --dark-color-tag-purple-bg: #201425; --dark-color-tag-purple-border: #5a2969; --dark-color-tag-purple-color: #d988cd; --dark-color-tag-red-bg: #291515; --dark-color-tag-red-border: #5c2626; --dark-color-tag-red-color: #e04141; --dark-color-tag-orange-bg: #312313; --dark-color-tag-orange-border: #593914; --dark-color-tag-orange-color: #ffa031; --dark-color-tag-blue-bg: #111a2c; --dark-color-tag-blue-border: #1348ab; --dark-color-tag-blue-color: #529fff; --dark-color-codemirror-line-hover: rgba(0, 135, 113, .2); --dark-color-codemirror-line-selection: rgba(0, 135, 113, .3); --dark-color-login-background: var(--dark-color-background); --dark-color-login-wave: var(--dark-color-surface-200); --dark-color-tooltip: rgba(61, 76, 104, .9); --dark-color-back-top: rgba(61, 76, 104, .9); --dark-color-back-top-hover: rgba(61, 76, 104, 1); --dark-color-scrollbar: #313f5a; --dark-color-scrollbar-webkit: #7484a0; --dark-color-scrollbar-webkit-hover: #90a4c7; --dark-color-table-ring: rgb(38 52 77); --dark-color-spin-container: #151f31 } html[data-theme-animations='off'] { .ant-menu, .ant-layout-sider, .ant-card, .ant-tag, .ant-progress-circle>*, .ant-input, .ant-table-row-expand-icon, .ant-switch, .ant-table-thead>tr>th, .ant-select-selection, .ant-btn, .ant-input-number, .ant-input-group-addon, .ant-checkbox-inner, .ant-progress-bg, .ant-progress-success-bg, .ant-radio-button-wrapper:not(:first-child):before, .ant-radio-button-wrapper, #login, .cm-s-xq.CodeMirror { transition: border 0s, background 0s !important } .ant-menu.ant-menu-inline .ant-menu-item:not(.ant-menu-sub .ant-menu-item), .ant-layout-sider-trigger, .ant-alert-close-icon .anticon-close, .ant-tabs-nav .ant-tabs-tab, .ant-input-number-input, .ant-collapse>.ant-collapse-item>.ant-collapse-header, .Line-Hover, .ant-menu-theme-switch, .ant-menu-submenu-title { transition: color 0s !important } .wave-btn-bg { transition: width 0s !important } } html[data-theme='ultra-dark'] { --dark-color-background: #21242a; --dark-color-surface-100: #0c0e12; --dark-color-surface-200: #222327; --dark-color-surface-300: #32353b; --dark-color-surface-400: rgba(255, 255, 255, .1); --dark-color-surface-500: #3b404b; --dark-color-surface-600: #505663; --dark-color-surface-700: #101113; --dark-color-surface-700-rgb: 16, 17, 19; --dark-color-table-hover: rgba(89, 89, 89, .15); --dark-color-text-primary: rgb(255 255 255 / 85%); --dark-color-stroke: #202025; --dark-color-tag-green-bg: 17, 36, 33; --dark-color-tag-green-border: 29, 95, 77; --dark-color-tag-green-color: #59cbac; --dark-color-tag-purple-bg: #241121; --dark-color-tag-purple-border: #5a2969; --dark-color-tag-purple-color: #d686ca; --dark-color-tag-red-bg: #2a1215; --dark-color-tag-red-border: #58181c; --dark-color-tag-red-color: #e84749; --dark-color-tag-orange-bg: #2b1d11; --dark-color-tag-orange-border: #593815; --dark-color-tag-orange-color: #e89a3c; --dark-color-tag-blue-bg: #111a2c; --dark-color-tag-blue-border: #0f367e; --dark-color-tag-blue-color: #3c89e8; --dark-color-codemirror-line-hover: rgba(82, 84, 94, .2); --dark-color-codemirror-line-selection: rgba(82, 84, 94, .3); --dark-color-login-background: #0a2227; --dark-color-login-wave: #0f2d32; --dark-color-tooltip: rgba(88, 93, 100, .9); --dark-color-back-top: rgba(88, 93, 100, .9); --dark-color-back-top-hover: rgba(88, 93, 100, 1); --dark-color-scrollbar: rgb(107, 107, 107); --dark-color-scrollbar-webkit: #9f9f9f; --dark-color-scrollbar-webkit-hover: #d1d1d1; --dark-color-table-ring: rgb(37 39 42); --dark-color-spin-container: #1d1d1d; .ant-dropdown-menu-dark { background-color: var(--dark-color-surface-500) } .dark .ant-dropdown-menu-submenu-title:hover, .dark .ant-select-dropdown-menu-item-active:not(.ant-select-dropdown-menu-item-disabled), .dark .ant-select-dropdown-menu-item:hover:not(.ant-select-dropdown-menu-item-disabled) { background-color: rgb(0 93 78 / .3) } .dark .waves-header { background-color: #0a2227 } .dark .ant-calendar-year-panel-year:hover, .dark .ant-calendar-month-panel-month:hover, .dark .ant-calendar-decade-panel-decade:hover { background-color: var(--dark-color-surface-600) } } html, body { height: 100vh; width: 100vw; margin: 0; padding: 0; overflow: hidden } body { color: rgb(0 0 0 / .65); font-size: 14px; font-variant: tabular-nums; line-height: 1.5; background-color: #fff; font-feature-settings: "tnum" } html { --antd-wave-shadow-color: var(--color-primary-100); line-height: 1.15; text-size-adjust: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; -ms-overflow-style: scrollbar; -moz-tap-highlight-color: #fff0; -webkit-tap-highlight-color: #fff0 } @supports (scrollbar-width:auto) and (not selector(::-webkit-scrollbar)) { :not(.dark) { scrollbar-color: #9a9a9a #fff0; scrollbar-width: thin } .dark * { scrollbar-color: var(--dark-color-scrollbar) #fff0; scrollbar-width: thin } } ::-webkit-scrollbar { width: 10px; height: 10px; background-color: #fff0 } ::-webkit-scrollbar-track { background-color: #fff0; margin-block: .5em } .ant-modal-wrap::-webkit-scrollbar-track { background-color: #fff; margin-block: 0 } ::-webkit-scrollbar-thumb { border-radius: 9999px; background-color: #9a9a9a; border: 2px solid #fff0; background-clip: content-box } ::-webkit-scrollbar-thumb:hover, ::-webkit-scrollbar-thumb:active { background-color: #828282 } .dark .ant-modal-wrap::-webkit-scrollbar-track { background-color: var(--dark-color-background) } .dark::-webkit-scrollbar-thumb { background-color: var(--dark-color-scrollbar-webkit) } .dark::-webkit-scrollbar-thumb:hover, .dark::-webkit-scrollbar-thumb:active { background-color: var(--dark-color-scrollbar-webkit-hover) } ::-moz-selection { color: var(--color-primary-100); background-color: #cfe8e4 } ::selection { color: var(--color-primary-100); background-color: #cfe8e4 } #app { height: 100%; position: fixed; top: 0; left: 0; right: 0; bottom: 0; margin: 0; padding: 0; overflow: auto } .ant-layout, .ant-layout * { box-sizing: border-box } .ant-spin-container:after { border-radius: 1.5rem } .dark .ant-spin-container:after { background: var(--dark-color-spin-container) } style attribute { text-align: center } .ant-table-thead>tr>th { padding: 12px 8px } .ant-table-tbody>tr>td { padding: 10px 8px } .ant-table-thead>tr>th { color: rgb(0 0 0 / .85); font-weight: 500; text-align: left; border-bottom: 1px solid #e8e8e8; transition: background .3s ease } .ant-table table { border-radius: 1rem } .ant-table-bordered .ant-table-tbody:not(.ant-table-expanded-row .ant-table-wrapper .ant-table-tbody)>tr:last-child>td:first-child { border-bottom-left-radius: 1rem } .ant-table-bordered .ant-table-tbody:not(.ant-table-expanded-row .ant-table-wrapper .ant-table-tbody)>tr:last-child>td:last-child { border-bottom-right-radius: 1rem } .ant-table { box-sizing: border-box; margin: 0; padding: 0; color: rgb(0 0 0 / .65); font-size: 14px; font-variant: tabular-nums; line-height: 1.5; list-style: none; font-feature-settings: "tnum"; position: relative; clear: both } .ant-table .ant-table-body:not(.ant-table-expanded-row .ant-table-body) { overflow-x: auto !important } .ant-card-hoverable { cursor: auto; cursor: pointer } .ant-card { box-sizing: border-box; margin: 0; padding: 0; color: rgb(0 0 0 / .65); font-size: 14px; font-variant: tabular-nums; line-height: 1.5; list-style: none; position: relative; background-color: #fff; border-radius: 2px; transition: all .3s } .ant-space { width: 100% } .ant-layout-sider-zero-width-trigger { display: none } @media (max-width:768px) { .ant-layout-sider { display: none } .ant-card, .ant-alert-error { margin: .5rem } .ant-tabs { margin: .5rem; padding: .5rem } .ant-modal-body { padding: 20px } .ant-form-item-label { line-height: 1.5; padding: 8px 0 0 } :not(.dark)::-webkit-scrollbar { width: 8px; height: 8px; background-color: #fff0 } .dark::-webkit-scrollbar { width: 8px; height: 8px; background-color: #fff0 } } .ant-layout-content { min-height: auto } .ant-card, .ant-tabs { border-radius: 1.5rem } .ant-card-hoverable { cursor: auto } .ant-card+.ant-card { margin-top: 20px } .drawer-handle { position: absolute; top: 72px; width: 41px; height: 40px; cursor: pointer; z-index: 0; text-align: center; line-height: 40px; font-size: 16px; display: flex; justify-content: center; align-items: center; background-color: #fff; right: -40px; box-shadow: 2px 0 8px rgb(0 0 0 / .15); border-radius: 0 4px 4px 0 } .ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected { background-color: #006655 !important; background-image: linear-gradient(270deg, #fff0 30%, #009980, #fff0 100%); background-repeat: no-repeat; animation: ma-bg-move linear 6.6s infinite; color: #fff; border-radius: .5rem } .ant-layout-sider-collapsed .ant-menu:not(.ant-menu-horizontal) .ant-menu-item-selected { border-radius: 0 } @-webkit-keyframes ma-bg-move { 0% { background-position: -500px 0 } 100% { background-position: 1000px 0 } } @keyframes ma-bg-move { 0% { background-position: -500px 0 } 50% { background-position: 1000px 0 } 100% { background-position: 1000px 0 } } .ant-menu-item-active, .ant-menu-item:hover, .ant-menu-submenu-title:hover, .ant-menu-item:active, .ant-menu-submenu-title:active { color: var(--color-primary-100); background-color: #e8f4f2 } .ant-menu-inline .ant-menu-item, .ant-menu-inline .ant-menu-submenu-title { border-radius: .5rem } .ant-menu-inline .ant-menu-item:after, .ant-menu { border-right-width: 0 } .ant-layout-sider-children, .ant-pagination ul { padding: .5rem } .ant-layout-sider-collapsed .ant-layout-sider-children { padding: .5rem 0 } .ant-dropdown-menu, .ant-select-dropdown-menu { padding: .5rem } .ant-dropdown-menu-item, .ant-dropdown-menu-item:hover, .ant-select-dropdown-menu-item, .ant-select-dropdown-menu-item:hover, .ant-select-selection--multiple .ant-select-selection__choice { border-radius: .5rem } .ant-select-dropdown--multiple .ant-select-dropdown-menu .ant-select-dropdown-menu-item, .ant-select-dropdown--single .ant-select-dropdown-menu .ant-select-dropdown-menu-item-selected { margin-block: 2px } @media (min-width:769px) { .drawer-handle { display: none } .ant-tabs { padding: 2rem } } .fade-in-enter, .fade-in-leave-active, .fade-in-linear-enter, .fade-in-linear-leave, .fade-in-linear-leave-active, .fade-in-linear-enter, .fade-in-linear-leave, .fade-in-linear-leave-active { opacity: 0 } .fade-in-linear-enter-active, .fade-in-linear-leave-active { -webkit-transition: opacity .2s linear; transition: opacity .2s linear } .fade-in-linear-enter-active, .fade-in-linear-leave-active { -webkit-transition: opacity .2s linear; transition: opacity .2s linear } .fade-in-enter-active, .fade-in-leave-active { -webkit-transition: all .3s cubic-bezier(.55, 0, .1, 1); transition: all .3s cubic-bezier(.55, 0, .1, 1) } .zoom-in-center-enter-active, .zoom-in-center-leave-active { -webkit-transition: all .3s cubic-bezier(.55, 0, .1, 1); transition: all .3s cubic-bezier(.55, 0, .1, 1) } .zoom-in-center-enter, .zoom-in-center-leave-active { opacity: 0; -webkit-transform: scaleX(0); transform: scaleX(0) } .zoom-in-top-enter-active, .zoom-in-top-leave-active { opacity: 1; -webkit-transform: scaleY(1); transform: scaleY(1); -webkit-transition: opacity .3s cubic-bezier(.23, 1, .32, 1), -webkit-transform .3s cubic-bezier(.23, 1, .32, 1); transition: opacity .3s cubic-bezier(.23, 1, .32, 1), -webkit-transform .3s cubic-bezier(.23, 1, .32, 1); transition: transform .3s cubic-bezier(.23, 1, .32, 1), opacity .3s cubic-bezier(.23, 1, .32, 1); transition: transform .3s cubic-bezier(.23, 1, .32, 1), opacity .3s cubic-bezier(.23, 1, .32, 1), -webkit-transform .3s cubic-bezier(.23, 1, .32, 1); -webkit-transform-origin: center top; transform-origin: center top } .zoom-in-top-enter, .zoom-in-top-leave-active { opacity: 0; -webkit-transform: scaleY(0); transform: scaleY(0) } .zoom-in-bottom-enter-active, .zoom-in-bottom-leave-active { opacity: 1; -webkit-transform: scaleY(1); transform: scaleY(1); -webkit-transition: opacity .3s cubic-bezier(.23, 1, .32, 1), -webkit-transform .3s cubic-bezier(.23, 1, .32, 1); transition: opacity .3s cubic-bezier(.23, 1, .32, 1), -webkit-transform .3s cubic-bezier(.23, 1, .32, 1); transition: transform .3s cubic-bezier(.23, 1, .32, 1), opacity .3s cubic-bezier(.23, 1, .32, 1); transition: transform .3s cubic-bezier(.23, 1, .32, 1), opacity .3s cubic-bezier(.23, 1, .32, 1), -webkit-transform .3s cubic-bezier(.23, 1, .32, 1); -webkit-transform-origin: center bottom; transform-origin: center bottom } .zoom-in-bottom-enter, .zoom-in-bottom-leave-active { opacity: 0; -webkit-transform: scaleY(0); transform: scaleY(0) } .zoom-in-left-enter-active, .zoom-in-left-leave-active { opacity: 1; -webkit-transform: scale(1, 1); transform: scale(1, 1); -webkit-transition: opacity .3s cubic-bezier(.23, 1, .32, 1), -webkit-transform .3s cubic-bezier(.23, 1, .32, 1); transition: opacity .3s cubic-bezier(.23, 1, .32, 1), -webkit-transform .3s cubic-bezier(.23, 1, .32, 1); transition: transform .3s cubic-bezier(.23, 1, .32, 1), opacity .3s cubic-bezier(.23, 1, .32, 1); transition: transform .3s cubic-bezier(.23, 1, .32, 1), opacity .3s cubic-bezier(.23, 1, .32, 1), -webkit-transform .3s cubic-bezier(.23, 1, .32, 1); -webkit-transform-origin: top left; transform-origin: top left } .zoom-in-left-enter, .zoom-in-left-leave-active { opacity: 0; -webkit-transform: scale(.45, .45); transform: scale(.45, .45) } .list-enter-active, .list-leave-active { -webkit-transition: all .3s; transition: all .3s } .list-enter, .list-leave-active { opacity: 0; -webkit-transform: translateY(-30px); transform: translateY(-30px) } .ant-tooltip-inner { min-height: 0; padding-inline: 1rem } .ant-list-item-meta-title { font-size: 14px } .ant-progress-inner { background-color: #ebeef5 } .deactive-client .ant-collapse-header { color: #ffffff !important; background-color: #ff7f7f } .ant-table-expand-icon-th, .ant-table-row-expand-icon-cell { width: 30px; min-width: 30px } .ant-tabs { background-color: #fff } .ant-form-item { margin-bottom: 0 } .ant-setting-textarea { margin-top: 1.5rem } .client-table-header { background-color: #f0f2f5 } .client-table-odd-row { background-color: #fafafa } .ant-table-pagination.ant-pagination { float: left } .ant-tag { margin-right: 0; margin-inline: 2px; display: inline-flex; align-items: center; justify-content: space-evenly } .ant-tag:not(.qr-tag) { column-gap: 4px } #inbound-info-modal .ant-tag { margin-block: 2px } .tr-info-table { display: inline-table; margin-block: 10px; width: 100% } #inbound-info-modal .tr-info-table .ant-tag { margin-block: 0; margin-inline: 0 } .tr-info-row { display: flex; flex-direction: column; row-gap: 2px; margin-block: 10px } .tr-info-row a { margin-left: 6px } .tr-info-row code { padding-inline: 8px } .tr-info-tag { max-width: 100%; text-wrap: balance; overflow: hidden; overflow-wrap: anywhere } .tr-info-title { display: inline-flex; align-items: center; justify-content: flex-start; column-gap: 4px } .ant-tag-blue { background-color: #edf4fa; border-color: #a9c5e7; color: #0e49b5 } .ant-tag-green { background-color: #eafff9; border-color: #76ccb4; color: #199270 } .ant-tag-purple { background-color: #f2eaf1; border-color: #d5bed2; color: #7a316f } .ant-tag-orange, .ant-alert-warning { background-color: #ffeee1; border-color: #fec093; color: #f37b24 } .ant-tag-red, .ant-alert-error { background-color: #ffe9e9; border-color: #ff9e9e; color: #cf3c3c } .ant-input::placeholder { opacity: .5 } .ant-input:hover, .ant-input:focus { background-color: #e8f4f2 } .ant-input-affix-wrapper:hover .ant-input:not(.ant-input-disabled) { background-color: #e8f4f2 } .delete-icon:hover { color: #e04141 } .normal-icon:hover { color: var(--color-primary-100) } .dark::-moz-selection { color: #fff; background-color: var(--color-primary-100) } .dark::selection { color: #fff; background-color: var(--color-primary-100) } .dark .normal-icon:hover { color: #fff } .dark .ant-layout-sider, .dark .ant-drawer-content, .ant-menu-dark, .ant-menu-dark .ant-menu-sub, .dark .ant-card, .dark .ant-table, .dark .ant-collapse-content, .dark .ant-tabs { background-color: var(--dark-color-surface-100); color: var(--dark-color-text-primary) } .dark .ant-card-hoverable:hover, .dark .ant-space-item>.ant-tabs:hover { box-shadow: 0 2px 8px #fff0 } .dark>.ant-layout, .dark .drawer-handle, .dark .ant-table-thead>tr>th, .dark .ant-table-expanded-row, .dark .ant-table-expanded-row:hover, .dark .ant-table-expanded-row .ant-table-tbody, .dark .ant-calendar { background-color: var(--dark-color-background); color: var(--dark-color-text-primary) } .dark .ant-table-expanded-row .ant-table-thead>tr:first-child>th { border-radius: 0 } .dark .ant-calendar, .dark .ant-card-bordered { border-color: var(--dark-color-background) } .dark .ant-table-bordered, .dark .ant-table-bordered.ant-table-empty .ant-table-placeholder, .dark .ant-table-bordered .ant-table-body>table, .dark .ant-table-bordered .ant-table-fixed-left table, .dark .ant-table-bordered .ant-table-fixed-right table, .dark .ant-table-bordered .ant-table-header>table, .dark .ant-table-bordered .ant-table-thead>tr:not(:last-child)>th, .dark .ant-table-bordered .ant-table-tbody>tr>td, .dark .ant-table-bordered .ant-table-thead>tr>th { border-color: var(--dark-color-surface-400) } .dark .ant-table-tbody>tr>td, .dark .ant-table-thead>tr>th, .dark .ant-card-head, .dark .ant-modal-header, .dark .ant-collapse>.ant-collapse-item, .dark .ant-tabs-bar, .dark .ant-list-split .ant-list-item, .dark .ant-popover-title, .dark .ant-calendar-header, .dark .ant-calendar-input-wrap { border-bottom-color: var(--dark-color-surface-400) } .dark .ant-modal-footer, .dark .ant-collapse-content, .dark .ant-calendar-footer, .dark .ant-divider-horizontal.ant-divider-with-text-left:before, .dark .ant-divider-horizontal.ant-divider-with-text-left:after, .dark .ant-divider-horizontal.ant-divider-with-text-center:before, .dark .ant-divider-horizontal.ant-divider-with-text-center:after { border-top-color: var(--dark-color-surface-300) } .ant-divider-horizontal.ant-divider-with-text-left:before { width: 10% } .dark .ant-progress-text, .dark .ant-card-head, .dark .ant-form, .dark .ant-collapse>.ant-collapse-item>.ant-collapse-header, .dark .ant-modal-close-x, .dark .ant-form .anticon, .dark .ant-tabs-tab-arrow-show:not(.ant-tabs-tab-btn-disabled), .dark .anticon-close, .dark .ant-list-item-meta-title, .dark .ant-select-selection i, .dark .ant-modal-confirm-title, .dark .ant-modal-confirm-content, .dark .ant-popover-message, .dark .ant-modal, .dark .ant-divider-inner-text, .dark .ant-popover-title, .dark .ant-popover-inner-content, .dark h2, .dark .ant-modal-title, .dark .ant-form-item-label>label, .dark .ant-checkbox-wrapper, .dark .ant-form-item, .dark .ant-calendar-footer .ant-calendar-today-btn, .dark .ant-calendar-footer .ant-calendar-time-picker-btn, .dark .ant-calendar-day-select, .dark .ant-calendar-month-select, .dark .ant-calendar-year-select, .dark .ant-calendar-date, .dark .ant-calendar-year-panel-year, .dark .ant-calendar-month-panel-month, .dark .ant-calendar-decade-panel-decade { color: var(--dark-color-text-primary) } .dark .ant-pagination-options-size-changer .ant-select-arrow .anticon.anticon-down.ant-select-arrow-icon { color: rgb(255 255 255 / 35%) } .dark .ant-pagination-item a, .dark .ant-pagination-next a, .dark .ant-pagination-prev a { color: var(--dark-color-text-primary) } .dark .ant-pagination-item:focus a, .dark .ant-pagination-item:hover a, .dark .ant-pagination-item-active a, .dark .ant-pagination-next:hover .ant-pagination-item-link { color: var(--color-primary-100) } .dark .ant-pagination-item-active { background-color: #fff0 } .dark .ant-list-item-meta-description { color: rgb(255 255 255 / .45) } .dark .ant-pagination-disabled i, .dark .ant-tabs-tab-btn-disabled { color: rgb(255 255 255 / .25) } .dark .ant-input, .dark .ant-input-group-addon, .dark .ant-collapse, .dark .ant-select-selection, .dark .ant-input-number, .dark .ant-input-number-handler-wrap, .dark .ant-table-placeholder, .dark .ant-empty-normal, .dark .ant-select-dropdown, .dark .ant-select-dropdown li, .dark .ant-select-dropdown-menu-item, .dark .client-table-header, .dark .ant-select-selection--multiple .ant-select-selection__choice { background-color: var(--dark-color-surface-200); border-color: var(--dark-color-surface-300); color: var(--dark-color-text-primary) } .dark .ant-select-dropdown--multiple .ant-select-dropdown-menu .ant-select-dropdown-menu-item.ant-select-dropdown-menu-item-selected:not(.ant-dropdown-menu-submenu-title:hover) { background-color: var(--dark-color-surface-300) } .dark .ant-select-dropdown-menu-item.ant-select-dropdown-menu-item-selected { background-color: var(--dark-color-surface-300) } .dark .ant-calendar-time-picker-inner { background-color: var(--dark-color-background) } .dark .ant-select-selection:hover, .dark .ant-calendar-picker-clear, .dark .ant-input-number:hover, .dark .ant-input-number:focus, .dark .ant-input:hover, .dark .ant-input:focus { background-color: rgb(0 135 113 / .3); border-color: var(--color-primary-100) } .dark .ant-input-affix-wrapper:hover .ant-input:not(.ant-input-disabled) { border-color: var(--color-primary-100); background-color: rgb(0 135 113 / .3) } .dark .ant-btn:not(.ant-btn-primary):not(.ant-btn-danger) { color: var(--dark-color-text-primary); background-color: rgb(10 117 87 / 30%); border: 1px solid var(--color-primary-100) } .dark .ant-radio-button-wrapper, .dark .ant-radio-button-wrapper:before { color: var(--dark-color-text-primary); background-color: rgb(0 135 113 / .3); border-color: var(--color-primary-100) } .ant-btn:focus:not(.ant-btn-primary):not(.ant-btn-danger), .ant-btn:hover:not(.ant-btn-primary):not(.ant-btn-danger) { background-color: #e8f4f2 } .dark .ant-btn:focus:not(.ant-btn-primary):not(.ant-btn-danger), .dark .ant-btn:hover:not(.ant-btn-primary):not(.ant-btn-danger) { color: #fff; background-color: rgb(10 117 87 / 50%); border-color: var(--color-primary-100) } .dark .ant-btn-primary[disabled], .dark .ant-btn-danger[disabled], .dark .ant-calendar-ok-btn-disabled { color: rgb(255 255 255 / 35%); background-color: var(--dark-color-surface-200); border-color: var(--dark-color-surface-300) } .dark .ant-table-tbody>tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)>td, .dark .client-table-odd-row { background-color: var(--dark-color-table-hover) } .dark .ant-table-row-expand-icon { color: #fff; background-color: #fff0; border-color: rgb(255 255 255 / 20%) } .dark .ant-table-row-expand-icon:hover { color: var(--color-primary-100); background-color: #fff0; border-color: var(--color-primary-100) } .dark .ant-switch:not(.ant-switch-checked), .dark .ant-progress-line .ant-progress-inner { background-color: var(--dark-color-surface-500) } .dark .ant-progress-circle-trail { stroke: var(--dark-color-stroke) !important } .dark .ant-popover-inner { background-color: var(--dark-color-surface-500) } .dark>.ant-popover-content>.ant-popover-arrow { border-color: var(--dark-color-surface-500) } @media (max-width:768px) { .dark .ant-popover-inner { background-color: var(--dark-color-surface-200) } .dark>.ant-popover-content>.ant-popover-arrow { border-color: var(--dark-color-surface-200) } } .ant-dropdown-menu-dark .ant-dropdown-menu-item:hover, .dark .ant-select-dropdown-menu-item-selected, .dark .ant-calendar-time-picker-select-option-selected { background-color: var(--dark-color-surface-600) } .ant-menu-dark .ant-menu-item:hover, .ant-menu-dark .ant-menu-submenu-title:hover { background-color: var(--dark-color-surface-300) } .dark .ant-menu-item:active, .dark .ant-menu-submenu-title:active { color: #fff; background-color: var(--dark-color-surface-300) } .dark .ant-alert-message { color: rgb(255 255 255 / .85) } .dark .ant-tag { color: var(--dark-color-tag-color); background-color: var(--dark-color-tag-bg); border-color: var(--dark-color-tag-border) } .dark .ant-tag-blue { background-color: var(--dark-color-tag-blue-bg); border-color: var(--dark-color-tag-blue-border); color: var(--dark-color-tag-blue-color) } .dark .ant-tag-red, .dark .ant-alert-error { background-color: var(--dark-color-tag-red-bg); border-color: var(--dark-color-tag-red-border); color: var(--dark-color-tag-red-color) } .dark .ant-tag-orange, .dark .ant-alert-warning { background-color: var(--dark-color-tag-orange-bg); border-color: var(--dark-color-tag-orange-border); color: var(--dark-color-tag-orange-color) } .dark .ant-tag-green { background-color: rgb(var(--dark-color-tag-green-bg)); border-color: rgb(var(--dark-color-tag-green-border)); color: var(--dark-color-tag-green-color) } .dark .ant-tag-purple { background-color: var(--dark-color-tag-purple-bg); border-color: var(--dark-color-tag-purple-border); color: var(--dark-color-tag-purple-color) } .dark .ant-modal-content, .dark .ant-modal-header { background-color: var(--dark-color-surface-700) } .dark .ant-calendar-next-month-btn-day .ant-calendar-date, .dark .ant-calendar-last-month-cell .ant-calendar-date { color: var(--dark-color-surface-300) } .dark .ant-calendar-selected-day .ant-calendar-date { background-color: var(--color-primary-100) !important; color: #fff } .dark .ant-calendar-date:hover, .dark .ant-calendar-time-picker-select li:hover { background-color: var(--dark-color-surface-600); color: #fff } .dark .ant-calendar-header a:hover, .dark .ant-calendar-header a:hover::before, .dark .ant-calendar-header a:hover::after { border-color: #fff } .dark .ant-calendar-time-picker-select { border-right-color: var(--dark-color-surface-300) } .has-warning .ant-select-selection, .has-warning .ant-select-selection:hover, .has-warning .ant-input, .has-warning .ant-input:hover { background-color: #ffeee1; border-color: #fec093 } .has-warning .ant-input::placeholder { color: #f37b24 } .has-warning .ant-input:not([disabled]):hover { border-color: #fec093 } .dark .has-warning .ant-select-selection, .dark .has-warning .ant-select-selection:hover, .dark .has-warning .ant-input, .dark .has-warning .ant-input:hover { border-color: #784e1d; background: #312313 } .dark .has-warning .ant-input::placeholder { color: rgb(255 160 49 / 70%) } .dark .has-warning .anticon { color: #ffa031 } .dark .has-success .anticon { color: var(--color-primary-100); animation-name: diffZoomIn1 !important } .dark .anticon-close-circle { color: #e04141 } .dark .ant-spin-nested-loading>div>.ant-spin .ant-spin-text { text-shadow: 0 1px 2px #0007 } .dark .ant-spin { color: #fff } .dark .ant-spin-dot-item { background-color: #fff } .ant-checkbox-wrapper, .ant-input-group-addon, .ant-tabs-tab, .ant-input::placeholder, .ant-collapse-header, .ant-menu, .ant-radio-button-wrapper { -webkit-user-select: none; user-select: none } .ant-calendar-date, .ant-calendar-year-panel-year, .ant-calendar-decade-panel-decade, .ant-calendar-month-panel-month { border-radius: 4px } .ant-checkbox-inner, .ant-checkbox-checked:after, .ant-table-row-expand-icon { border-radius: 6px } .ant-calendar-date:hover { background-color: #e8f4f2 } .ant-calendar-date:active { background-color: #e8f4f2; color: rgb(0 0 0 / .65) } .ant-calendar-today .ant-calendar-date { color: var(--color-primary-100); font-weight: 400; border-color: var(--color-primary-100) } .dark .ant-calendar-today .ant-calendar-date { color: #fff; border-color: var(--color-primary-100) } .ant-calendar-selected-day .ant-calendar-date { background: var(--color-primary-100); color: #fff } li.ant-select-dropdown-menu-item:empty:after { content: "None"; font-weight: 400; color: rgb(0 0 0 / .25) } .dark li.ant-select-dropdown-menu-item:empty:after { content: "None"; font-weight: 400; color: rgb(255 255 255 / .3) } .ant-select-dropdown.ant-select-dropdown--multiple .ant-select-dropdown-menu-item:hover .ant-select-selected-icon { color: rgb(0 0 0 / .87) } .dark.ant-select-dropdown.ant-select-dropdown--multiple .ant-select-dropdown-menu-item:hover .ant-select-selected-icon { color: #fff } .ant-select-dropdown.ant-select-dropdown--multiple .ant-select-dropdown-menu-item-selected .ant-select-selected-icon, .ant-select-dropdown.ant-select-dropdown--multiple .ant-select-dropdown-menu-item-selected:hover .ant-select-selected-icon { color: var(--color-primary-100) } .ant-select-selection:hover, .ant-input-number-focused, .ant-input-number:hover { background-color: #e8f4f2 } .dark .ant-input-number-handler:active { background-color: var(--color-primary-100) } .dark .ant-input-number-handler:hover .ant-input-number-handler-down-inner, .dark .ant-input-number-handler:hover .ant-input-number-handler-up-inner { color: #fff } .dark .ant-input-number-handler-down { border-top: 1px solid rgb(217 217 217 / .3) } .dark .ant-calendar-year-panel-header .ant-calendar-year-panel-century-select, .dark .ant-calendar-year-panel-header .ant-calendar-year-panel-decade-select, .dark .ant-calendar-year-panel-header .ant-calendar-year-panel-month-select, .dark .ant-calendar-year-panel-header .ant-calendar-year-panel-year-select .dark .ant-calendar-month-panel-header .ant-calendar-month-panel-century-select, .dark .ant-calendar-month-panel-header .ant-calendar-month-panel-decade-select, .dark .ant-calendar-month-panel-header .ant-calendar-month-panel-month-select, .dark .ant-calendar-month-panel-header .ant-calendar-month-panel-year-select { color: rgb(255 255 255 / .85) } .dark .ant-calendar-year-panel-header { border-bottom: 1px solid var(--dark-color-surface-200) } .dark .ant-calendar-year-panel-last-decade-cell .ant-calendar-year-panel-year, .dark .ant-calendar-year-panel-next-decade-cell .ant-calendar-year-panel-year { color: rgb(255 255 255 / .35) } .dark .ant-divider:not(.ant-divider-with-text-center, .ant-divider-with-text-left, .ant-divider-with-text-right), .ant-dropdown-menu-dark, .dark .ant-calendar-year-panel-year:hover, .dark .ant-calendar-month-panel-month:hover, .dark .ant-calendar-decade-panel-decade:hover { background-color: var(--dark-color-surface-200) } .dark .ant-calendar-header a:hover { color: #fff } .dark .ant-calendar-month-panel-header { background-color: var(--dark-color-background); border-bottom: 1px solid var(--dark-color-surface-200) } .dark .ant-calendar-year-panel, .dark .ant-calendar table { background-color: var(--dark-color-background) } .dark .ant-calendar-year-panel-selected-cell .ant-calendar-year-panel-year, .dark .ant-calendar-year-panel-selected-cell .ant-calendar-year-panel-year:hover, .dark .ant-calendar-month-panel-selected-cell .ant-calendar-month-panel-month, .dark .ant-calendar-month-panel-selected-cell .ant-calendar-month-panel-month:hover, .dark .ant-calendar-decade-panel-selected-cell .ant-calendar-decade-panel-decade, .dark .ant-calendar-decade-panel-selected-cell .ant-calendar-decade-panel-decade:hover { color: #fff; background-color: var(--color-primary-100) !important } .dark .ant-calendar-last-month-cell .ant-calendar-date, .dark .ant-calendar-last-month-cell .ant-calendar-date:hover, .dark .ant-calendar-next-month-btn-day .ant-calendar-date, .dark .ant-calendar-next-month-btn-day .ant-calendar-date:hover { color: rgb(255 255 255 / 25%); background: #fff0; border-color: #fff0 } .dark .ant-calendar-today .ant-calendar-date:hover { color: #fff; border-color: var(--color-primary-100); background-color: var(--color-primary-100) } .dark .ant-calendar-decade-panel-last-century-cell .ant-calendar-decade-panel-decade, .dark .ant-calendar-decade-panel-next-century-cell .ant-calendar-decade-panel-decade { color: rgb(255 255 255 / 25%) } .dark .ant-calendar-decade-panel-header { border-bottom: 1px solid var(--dark-color-surface-200); background-color: var(--dark-color-background) } .dark .ant-checkbox-inner { background-color: rgb(0 135 113 / .3); border-color: rgb(0 135 113 / .3) } .dark .ant-checkbox-checked .ant-checkbox-inner { background-color: var(--color-primary-100); border-color: var(--color-primary-100) } .dark .ant-calendar-input { background-color: var(--dark-color-background); color: var(--dark-color-text-primary) } .dark .ant-calendar-input::placeholder { color: rgb(255 255 255 / .25) } .ant-input-group.ant-input-group-compact-addon:not(:first-child):not(:last-child), .ant-input-group.ant-input-group-compact-wrap:not(:first-child):not(:last-child), .ant-input-group.ant-input-group-compact>.ant-input:not(:first-child):not(:last-child), .ant-input-number-handler, .ant-input-number-handler-wrap { border-radius: 0 } .ant-input-number { overflow: clip } .ant-modal-body, .ant-collapse-content>.ant-collapse-content-box { overflow-x: auto } .ant-modal-body { overflow-y: hidden } .ant-calendar-year-panel-year:hover, .ant-calendar-decade-panel-decade:hover, .ant-calendar-month-panel-month:hover, .ant-dropdown-menu-item:hover, .ant-dropdown-menu-submenu-title:hover, .ant-select-dropdown-menu-item-active:not(.ant-select-dropdown-menu-item-disabled), .ant-select-dropdown-menu-item:hover:not(.ant-select-dropdown-menu-item-disabled), .ant-table-tbody>tr.ant-table-row-hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)>td, .ant-table-tbody>tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)>td, .ant-table-thead>tr.ant-table-row-hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)>td, .ant-table-thead>tr:hover:not(.ant-table-expanded-row):not(.ant-table-row-selected)>td { background-color: #e8f4f2 } .dark .ant-dropdown-menu-submenu-title:hover, .dark .ant-select-dropdown-menu-item-active:not(.ant-select-dropdown-menu-item-disabled), .dark .ant-select-dropdown-menu-item:hover:not(.ant-select-dropdown-menu-item-disabled) { background-color: rgb(0 93 78 / .3) } .ant-select-dropdown, .ant-popover-inner { overflow-x: hidden } .ant-popover-inner-content { max-height: 450px; overflow-y: auto } @media (max-height:900px) { .ant-popover-inner-content { max-height: 400px } } @media (max-height:768px) { .ant-popover-inner-content { max-height: 300px } } @media (max-width:768px) { .ant-popover-inner-content { max-height: 300px } } .qr-modal { display: flex; align-items: flex-end; gap: 10px; flex-direction: column; flex-wrap: wrap; row-gap: 24px } .qr-box { width: 220px } .qr-cv { width: 100%; height: 100% } .dark .qr-cv { filter: invert(1) } .qr-bg { background-color: #fff; display: flex; justify-content: center; align-content: center; padding: .8rem; border-radius: 1rem; border: solid 1px #e8e8e8; height: 220px; width: 220px; transition: all .1s } .qr-bg:hover { border-color: #76ccb4; background-color: #eafff9 } .qr-bg:hover:active { border-color: #76ccb4; background-color: rgb(197 241 228 / 70%) } .dark .qr-bg { background-color: var(--dark-color-surface-700); border-color: var(--dark-color-surface-300) } .dark .qr-bg:hover { background-color: rgb(var(--dark-color-tag-green-bg)); border-color: rgb(var(--dark-color-tag-green-border)) } .dark .qr-bg:hover:active { background-color: #17322e } @property --tr-rotate { syntax: ''; initial-value: 45deg; inherits: false } .qr-bg-sub { background-image: linear-gradient(var(--tr-rotate), #76ccb4, transparent, #d5bed2); display: flex; justify-content: center; align-content: center; padding: 1px; border-radius: 1rem; height: 220px; width: 220px } .dark .qr-bg-sub { background-image: linear-gradient(var(--tr-rotate), #195141, transparent, #5a2969) } .qr-bg-sub:hover { animation: tr-rotate-gradient 3.5s linear infinite } @keyframes tr-rotate-gradient { from { --tr-rotate: 45deg } to { --tr-rotate: 405deg } } .qr-bg-sub-inner { background-color: #fff; padding: .8rem; border-radius: 1rem; transition: all .1s } .qr-bg-sub-inner:hover { background-color: rgb(255 255 255 / 60%); backdrop-filter: blur(25px) } .qr-bg-sub-inner:hover:active { background-color: rgb(255 255 255 / 30%) } .dark .qr-bg-sub-inner { background-color: rgb(var(--dark-color-surface-700-rgb)) } .dark .qr-bg-sub-inner:hover { background-color: rgba(var(--dark-color-surface-700-rgb), .5); backdrop-filter: blur(25px) } .dark .qr-bg-sub-inner:hover:active { background-color: rgba(var(--dark-color-surface-700-rgb), .2) } /* Subscription long links styling */ .mono-link .ant-input { font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important; direction: ltr !important; unicode-bidi: plaintext !important; white-space: nowrap !important; overflow-x: auto !important; text-overflow: clip !important; } .mono-link.single-line .ant-input { height: 38px; } .qr-tag { text-align: center; margin-bottom: 10px; width: 100%; overflow: hidden; margin-inline: 0 } @media (min-width:769px) { .qr-modal { flex-direction: row; max-width: 680px } } .tr-marquee { justify-content: flex-start } .tr-marquee span { padding-right: 25%; white-space: nowrap; transform-origin: center } @keyframes move-ltr { 0% { transform: translateX(0) } 100% { transform: translateX(-100%) } } .ant-input-group-addon:not(:first-child):not(:last-child) { border-radius: 0 1rem 1rem 0 } b, strong { font-weight: 500 } .ant-collapse>.ant-collapse-item>.ant-collapse-header { padding: 10px 16px 10px 40px } .dark .ant-message-notice-content { background-color: var(--dark-color-surface-200); border: 1px solid var(--dark-color-surface-300); color: var(--dark-color-text-primary) } .ant-btn-danger { background-color: var(--dark-color-btn-danger); border-color: var(--dark-color-btn-danger-border) } .ant-btn-danger:focus, .ant-btn-danger:hover { background-color: var(--dark-color-btn-danger-hover); border-color: var(--dark-color-btn-danger-hover) } .dark .ant-alert-close-icon .anticon-close:hover { color: #fff } .ant-empty-small { margin: 4px 0; background-color: transparent !important } .ant-empty-small .ant-empty-image { height: 20px } .ant-menu-theme-switch, .ant-menu-theme-switch:hover { background-color: transparent !important; cursor: default !important } .dark .ant-tooltip-inner, .dark .ant-tooltip-arrow:before { background-color: var(--dark-color-tooltip) } .ant-select-sm .ant-select-selection__rendered { margin-left: 10px } .ant-collapse { -moz-animation: collfade .3s ease; -webkit-animation: .3s collfade .3s ease; animation: collfade .3s ease } @-webkit-keyframes collfade { 0% { transform: scaleY(.8); transform-origin: 0 0%; opacity: 0 } 100% { transform: scaleY(1); transform-origin: 0 0%; opacity: 1 } } @keyframes collfade { 0% { transform: scaleY(.8); transform-origin: 0 0%; opacity: 0 } 100% { transform: scaleY(1); transform-origin: 0 0%; opacity: 1 } } .ant-table-tbody>tr>td { border-color: #f0f0f0 } .ant-table-row-expand-icon { vertical-align: middle; margin-inline-end: 8px; position: relative; transform: scale(.9411764705882353) } .ant-table-row-collapsed::before { transform: rotate(-180deg); top: 7px; inset-inline-end: 3px; inset-inline-start: 3px; height: 1px; position: absolute; background: currentcolor; transition: transform .3s ease-out; content: "" } .ant-table-row-collapsed::after { transform: rotate(0deg); top: 3px; bottom: 3px; inset-inline-start: 7px; width: 1px; position: absolute; background: currentcolor; transition: transform .3s ease-out; content: "" } .ant-table-row-expanded::before { top: 7px; inset-inline-end: 3px; inset-inline-start: 3px; height: 1px; position: absolute; background: currentcolor; transition: transform .3s ease-out; content: "" } .ant-table-row-expanded::after { top: 3px; bottom: 3px; inset-inline-start: 7px; width: 1px; transform: rotate(90deg); position: absolute; background: currentcolor; transition: transform .3s ease-out; content: "" } .ant-menu-theme-switch.ant-menu-item .ant-switch:not(.ant-switch-disabled):active:after, .ant-switch:not(.ant-switch-disabled):active:before { width: 16px } .dark .ant-select-disabled .ant-select-selection { background: var(--dark-color-surface-100); border-color: var(--dark-color-surface-200); color: rgb(255 255 255 / .25) } .dark .ant-select-disabled .anticon { color: rgb(255 255 255 / .25) } .dark .ant-input-number-handler-down-disabled, .dark .ant-input-number-handler-up-disabled { background-color: rgb(0 0 0 / .1) } .dark .ant-input-number-handler-down-disabled .anticon, .dark .ant-input-number-handler-up-disabled .anticon, .dark .ant-input-number-handler-down:hover.ant-input-number-handler-down-disabled .anticon, .dark .ant-input-number-handler-up:hover.ant-input-number-handler-up-disabled .anticon { color: rgb(255 255 255 / .25) } .dark .ant-input-number-handler-down:active.ant-input-number-handler-down-disabled, .dark .ant-input-number-handler-up:active.ant-input-number-handler-up-disabled { background-color: rgb(0 0 0 / .2) } .ant-menu-dark .ant-menu-inline.ant-menu-sub { background: var(--dark-color-surface-100); box-shadow: none } .dark .ant-layout-sider-trigger { background: var(--dark-color-surface-100); color: rgb(255 255 255 / 65%) } .ant-layout-sider { overflow: auto } .dark .ant-back-top-content { background-color: var(--dark-color-back-top) } .dark .ant-back-top-content:hover { background-color: var(--dark-color-back-top-hover) } .ant-calendar-time .ant-calendar-footer .ant-calendar-time-picker-btn { text-transform: capitalize } .ant-calendar { border-color: #fff0; border-width: 0 } .ant-calendar-time-picker-select li:focus, li.ant-calendar-time-picker-select-option-selected { color: rgb(0 0 0 / .65); font-weight: 400; background-color: #e8f4f2 } .dark li.ant-calendar-time-picker-select-option-selected { color: var(--dark-color-text-primary); font-weight: 400 } .dark .ant-calendar-time-picker-select li:focus { color: #fff; font-weight: 400; background-color: var(--color-primary-100) } .ant-calendar-time-picker-select li:hover { background: #f5f5f5 } .ant-calendar-date { transition: background .3s ease, color .3s ease } li.ant-calendar-time-picker-select-option-selected { margin-block: 2px } .ant-calendar-time-picker-select { padding: 4px } .ant-calendar-time-picker-select li { height: 28px; line-height: 28px; border-radius: 4px } @media (min-width:769px) { .ant-layout-content { margin: 24px 16px } } .ant-card-dark h2 { color: var(--dark-color-text-primary) } .ant-backup-list-item { gap: 10px } .ant-version-list-item { --padding: 12px; padding: var(--padding) !important; gap: var(--padding) } .dark .ant-version-list-item svg { color: var(--dark-color-text-primary) } .dark .ant-backup-list-item svg, .dark .ant-badge-status-text, .dark .ant-card-extra { color: var(--dark-color-text-primary) } .dark .ant-card-actions>li { color: rgba(255, 255, 255, .55) } .dark .ant-radio-inner { background-color: var(--dark-color-surface-100); border-color: var(--dark-color-surface-600) } .dark .ant-radio-checked .ant-radio-inner { border-color: var(--color-primary-100) } .dark .ant-backup-list, .dark .ant-version-list, .dark .ant-card-actions, .dark .ant-card-actions>li:not(:last-child) { border-color: var(--dark-color-stroke) } .ant-card-actions { background: transparent } .ip-hidden { -webkit-user-select: none; -moz-user-select: none; user-select: none; filter: blur(10px) } .running-animation .ant-badge-status-dot { animation: runningAnimation 1.2s linear infinite } .running-animation .ant-badge-status-processing:after { border-color: var(--color-primary-100) } @keyframes runningAnimation { 0%, 50%, 100% { transform: scale(1); opacity: 1 } 10% { transform: scale(1.5); opacity: .2 } } .mb-10 { margin-bottom: 10px !important } .mb-12 { margin-bottom: 12px !important } .mt-5 { margin-top: 5px !important } .mr-8 { margin-right: 8px !important } .ml-10 { margin-left: 10px !important } .mr-05 { margin-right: .5rem !important } .fs-1rem { font-size: 1rem !important } .w-100 { width: 100% !important } .w-70 { width: 70px !important } .w-95 { width: 95px !important } .text-center { text-align: center !important } .cursor-pointer { cursor: pointer !important } .float-right { float: right !important } .va-middle { vertical-align: middle !important } .d-flex { display: flex !important } .justify-end { justify-content: flex-end !important } .log-container { height: auto; max-height: 500px; overflow: auto; margin-top: .5rem } .max-w-400 { max-width: 400px; display: inline-block } .card-placeholder { text-align: center; padding: 30px 0; margin-top: 10px; background: transparent; border: none } .ant-space.jc-center { justify-content: center } #app.login-app { overflow: hidden; margin: 0 !important; padding: 0 !important; min-height: 100vh; width: 100vw } #app.login-app * { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale } #app.login-app h1 { text-align: center; height: 110px } #app.login-app .ant-layout-content { margin: 0 !important; padding: 0 !important; width: 100vw; max-width: 100vw } #app.login-app.ant-layout, #app.login-app .ant-layout { margin: 0 !important; padding: 0 !important; width: 100vw; max-width: 100vw } .min-h-0 { min-height: 0 !important } .min-h-100vh { min-height: 100vh !important } .h-100 { height: 100% !important } .h-50px { height: 50px !important } .overflow-auto { overflow: auto !important } .overflow-x-hidden { overflow-x: hidden !important } .overflow-hidden-auto { overflow: hidden auto !important } .mt-1rem { margin-top: 1rem !important } .my-3rem { margin-top: 3rem !important; margin-bottom: 3rem !important } #app.login-app #login { animation: charge .5s both; background-color: #fff; border-radius: 2rem; padding: 4rem 3rem; transition: all .3s; user-select: none; -webkit-user-select: none; -moz-user-select: none } #app.login-app #login:hover { box-shadow: 0 2px 8px rgba(0, 0, 0, .09) } @keyframes charge { from { transform: translateY(5rem); opacity: 0 } to { transform: translateY(0); opacity: 1 } } #app.login-app .under { background-color: #c7ebe2; z-index: 0 } #app.login-app.dark .under { background-color: var(--dark-color-login-wave) } #app.login-app.dark #login { background-color: var(--dark-color-surface-100) } #app.login-app.dark h1 { color: rgba(255, 255, 255) } #app.login-app #login .ant-form-item-children .ant-btn, #app.login-app #login .ant-input { height: 50px; border-radius: 30px } #app.login-app #login .ant-input-group-addon { border-radius: 0 30px 30px 0; width: 50px; font-size: 18px } #app.login-app #login .ant-input-affix-wrapper .ant-input-prefix { left: 23px } #app.login-app #login .ant-input-affix-wrapper .ant-input:not(:first-child) { padding-left: 50px } #app.login-app .centered { display: flex; text-align: center; align-items: center; justify-content: center; width: 100% } #app.login-app .title { font-size: 2rem; margin-block-end: 2rem } #app.login-app .title b { font-weight: bold !important } .ant-btn-primary-login { width: 100% } .ant-btn-primary-login:focus, .ant-btn-primary-login:hover { color: #fff; background-color: #006655; border-color: #006655; background-image: linear-gradient(270deg, rgba(123, 199, 77, 0) 30%, #009980, rgba(123, 199, 77, 0) 100%); background-repeat: no-repeat; animation: ma-bg-move ease-in-out 5s infinite; background-position-x: -500px; width: 95%; animation-delay: -.5s; box-shadow: 0 2px 0 rgba(0, 0, 0, .045) } .ant-btn-primary-login.active, .ant-btn-primary-login:active { color: #fff; background-color: #006655; border-color: #006655 } .wave-btn-bg { position: relative; border-radius: 25px; width: 100%; transition: all .3s cubic-bezier(.645, .045, .355, 1) } .dark .wave-btn-bg { color: #fff; position: relative; background-color: #0a7557; border: 2px double transparent; background-origin: border-box; background-clip: padding-box, border-box; background-size: 300%; width: 100%; z-index: 1 } .dark .wave-btn-bg:hover { animation: wave-btn-tara 4s ease infinite } .dark .wave-btn-bg-cl { background-image: linear-gradient(rgba(13, 14, 33, 0), rgba(13, 14, 33, 0)), radial-gradient(circle at left top, #006655, #009980, #006655) !important; border-radius: 3em } .dark .wave-btn-bg-cl:hover { width: 95% } .dark .wave-btn-bg-cl:before { position: absolute; content: ""; top: -5px; left: -5px; bottom: -5px; right: -5px; z-index: -1; background: inherit; background-size: inherit; border-radius: 4em; opacity: 0; transition: .5s } .dark .wave-btn-bg-cl:hover::before { opacity: 1; filter: blur(20px); animation: wave-btn-tara 8s linear infinite } @keyframes wave-btn-tara { to { background-position: 300% } } .waves-header { position: fixed; top: 0; left: 0; right: 0; width: 100%; text-align: center; background-color: #dbf5ed; color: white; z-index: -1 } .dark .waves-header { background-color: var(--dark-color-login-background) } .waves-inner-header { height: 50vh; width: 100%; margin: 0; padding: 0 } .waves { position: relative; width: 100%; height: 15vh; margin-bottom: -8px; min-height: 100px; max-height: 150px } .parallax>use { animation: move-forever 25s cubic-bezier(.55, .5, .45, .5) infinite } .dark .parallax>use { fill: var(--dark-color-login-wave) } .parallax>use:nth-child(1) { animation-delay: -2s; animation-duration: 4s; opacity: .2 } .parallax>use:nth-child(2) { animation-delay: -3s; animation-duration: 7s; opacity: .4 } .parallax>use:nth-child(3) { animation-delay: -4s; animation-duration: 10s; opacity: .6 } .parallax>use:nth-child(4) { animation-delay: -5s; animation-duration: 13s } @keyframes move-forever { 0% { transform: translate3d(-90px, 0, 0) } 100% { transform: translate3d(85px, 0, 0) } } @media (max-width:768px) { #app.login-app .waves { height: 40px; min-height: 40px } } #app.login-app .words-wrapper { width: 100%; display: inline-block; position: relative; text-align: center } #app.login-app .words-wrapper b { width: 100%; display: inline-block; position: absolute; left: 0; top: 0 } #app.login-app .words-wrapper b.is-visible { position: relative } #app.login-app .headline.zoom .words-wrapper { -webkit-perspective: 300px; -moz-perspective: 300px; perspective: 300px } #app.login-app .headline { display: flex; justify-content: center; align-items: center } #app.login-app .headline.zoom b { opacity: 0 } #app.login-app .headline.zoom b.is-visible { opacity: 1; -webkit-animation: zoom-in .8s; -moz-animation: zoom-in .8s; animation: cubic-bezier(.215, .61, .355, 1) zoom-in .8s } #app.login-app .headline.zoom b.is-hidden { -webkit-animation: zoom-out .8s; -moz-animation: zoom-out .8s; animation: cubic-bezier(.215, .61, .355, 1) zoom-out .4s } @-webkit-keyframes zoom-in { 0% { opacity: 0; -webkit-transform: translateZ(100px) } 100% { opacity: 1; -webkit-transform: translateZ(0) } } @-moz-keyframes zoom-in { 0% { opacity: 0; -moz-transform: translateZ(100px) } 100% { opacity: 1; -moz-transform: translateZ(0) } } @keyframes zoom-in { 0% { opacity: 0; -webkit-transform: translateZ(100px); -moz-transform: translateZ(100px); -ms-transform: translateZ(100px); -o-transform: translateZ(100px); transform: translateZ(100px) } 100% { opacity: 1; -webkit-transform: translateZ(0); -moz-transform: translateZ(0); -ms-transform: translateZ(0); -o-transform: translateZ(0); transform: translateZ(0) } } .inbounds-page .ant-table:not(.ant-table-expanded-row .ant-table) { outline: 1px solid #f0f0f0; outline-offset: -1px; border-radius: 1rem; overflow-x: hidden } .inbounds-page.dark .ant-table:not(.ant-table-expanded-row .ant-table) { outline-color: var(--dark-color-table-ring) } .inbounds-page .ant-table .ant-table-content .ant-table-scroll .ant-table-body { overflow-y: hidden } .inbounds-page .ant-table .ant-table-content .ant-table-tbody tr:last-child .ant-table-wrapper { margin: -10px 22px !important } .inbounds-page .ant-table .ant-table-content .ant-table-tbody tr:last-child .ant-table-wrapper .ant-table { border-bottom-left-radius: 1rem; border-bottom-right-radius: 1rem } .inbounds-page .ant-table .ant-table-content .ant-table-tbody tr:last-child tr:last-child td { border-bottom-color: transparent } .inbounds-page .ant-table .ant-table-tbody tr:last-child.ant-table-expanded-row .ant-table-wrapper .ant-table-tbody>tr:last-child>td:first-child { border-bottom-left-radius: 6px } .inbounds-page .ant-table .ant-table-tbody tr:last-child.ant-table-expanded-row .ant-table-wrapper .ant-table-tbody>tr:last-child>td:last-child { border-bottom-right-radius: 6px } @media (max-width:768px) { .inbounds-page .ant-card-body { padding: .5rem } .inbounds-page .ant-table .ant-table-content .ant-table-tbody tr:last-child .ant-table-wrapper { margin: -10px 2px !important } } .inbounds-page.dark .ant-switch-small:not(.ant-switch-checked) { background-color: var(--dark-color-surface-100) !important } .inbounds-page .ant-custom-popover-title { display: flex; align-items: center; gap: 10px; margin: 5px 0 } .inbounds-page .ant-col-sm-24 { margin: .5rem -2rem .5rem 2rem } .inbounds-page tr.hideExpandIcon .ant-table-row-expand-icon { display: none } .inbounds-page .infinite-tag { padding: 0 5px; border-radius: 2rem; min-width: 50px; min-height: 22px } .inbounds-page .infinite-bar .ant-progress-inner .ant-progress-bg { background-color: #F2EAF1; border: #D5BED2 solid 1px } .inbounds-page.dark .infinite-bar .ant-progress-inner .ant-progress-bg { background-color: #7a316f !important; border: #7a316f solid 1px } .inbounds-page .ant-collapse { margin: 5px 0 } .inbounds-page .info-large-tag { max-width: 200px; overflow: hidden } .inbounds-page .client-comment { font-size: 12px; opacity: .75; cursor: help } .inbounds-page .client-email { font-weight: 500 } .inbounds-page .client-popup-item { display: flex; align-items: center; gap: 5px } .inbounds-page .online-animation .ant-badge-status-dot { animation: onlineAnimation 1.2s linear infinite } @keyframes onlineAnimation { 0%, 50%, 100% { transform: scale(1); opacity: 1 } 10% { transform: scale(1.5); opacity: .2 } } .inbounds-page .tr-table-box { display: flex; gap: 4px; justify-content: center; align-items: center } .inbounds-page .tr-table-rt { flex-basis: 70px; min-width: 70px; text-align: end } .inbounds-page .tr-table-lt { flex-basis: 70px; min-width: 70px; text-align: start } .inbounds-page .tr-table-bar { flex-basis: 160px; min-width: 60px } .inbounds-page .tr-infinity-ch { font-size: 14pt; max-height: 24px; display: inline-flex; align-items: center } .inbounds-page .ant-table-expanded-row .ant-table .ant-table-body { overflow-x: hidden } .inbounds-page .ant-table-expanded-row .ant-table-tbody>tr>td { padding: 10px 2px } .inbounds-page .ant-table-expanded-row .ant-table-thead>tr>th { padding: 12px 2px } @-webkit-keyframes zoom-out { 0% { opacity: 1; -webkit-transform: translateZ(0) } 100% { opacity: 0; -webkit-transform: translateZ(-100px) } } @-moz-keyframes zoom-out { 0% { opacity: 1; -moz-transform: translateZ(0) } 100% { opacity: 0; -moz-transform: translateZ(-100px) } } @keyframes zoom-out { 0% { opacity: 1; -webkit-transform: translateZ(0); -moz-transform: translateZ(0); -ms-transform: translateZ(0); -o-transform: translateZ(0); transform: translateZ(0) } 100% { opacity: 0; -webkit-transform: translateZ(-100px); -moz-transform: translateZ(-100px); -ms-transform: translateZ(-100px); -o-transform: translateZ(-100px); transform: translateZ(-100px) } } .setting-section { position: absolute; top: 0; right: 0; padding: 22px } .ant-space-item .ant-switch { margin: 2px 0 4px } @media (min-width:769px) { .settings-page .ant-layout-content { margin: 24px 16px } } @media (max-width:768px) { .settings-page .ant-tabs-nav .ant-tabs-tab { margin: 0; padding: 12px .5rem } } .settings-page .ant-tabs-bar { margin: 0 } .settings-page .ant-list-item { display: block } .settings-page .alert-msg { color: rgb(194, 117, 18); font-weight: normal; font-size: 16px; padding: .5rem 1rem; text-align: center; background: rgb(255 145 0 / 15%); margin: 1.5rem 2.5rem 0; border-radius: .5rem; transition: all .5s; animation: settings-signal 3s cubic-bezier(.18, .89, .32, 1.28) infinite } .settings-page .alert-msg:hover { cursor: default; transition-duration: .3s; animation: settings-signal .9s ease infinite } @keyframes settings-signal { 0% { box-shadow: 0 0 0 0 rgba(194, 118, 18, .5) } 50% { box-shadow: 0 0 0 6px rgba(0, 0, 0, 0) } 100% { box-shadow: 0 0 0 6px rgba(0, 0, 0, 0) } } .settings-page .alert-msg>i { color: inherit; font-size: 24px } .settings-page.dark .ant-input-password-icon { color: var(--dark-color-text-primary) } .settings-page .ant-collapse-content-box .ant-alert { margin-block-end: 12px } @media (min-width:769px) { .xray-page .ant-layout-content { margin: 24px 16px } } @media (max-width:768px) { .xray-page .ant-tabs-nav .ant-tabs-tab { margin: 0; padding: 12px .5rem } .xray-page .ant-table-thead>tr>th, .xray-page .ant-table-tbody>tr>td { padding: 10px 0 } } .xray-page .ant-tabs-bar { margin: 0 } .xray-page .ant-list-item { display: block } .xray-page .ant-list-item>li { padding: 10px 20px !important } .xray-page .ant-collapse-content-box .ant-alert { margin-block-end: 12px } #app.login-app.dark #login input.ant-input:-webkit-autofill, #app.login-app.dark #login input.ant-input:-webkit-autofill:hover, #app.login-app.dark #login input.ant-input:-webkit-autofill:focus, #app.login-app.dark #login .ant-input-password input:-webkit-autofill, #app.login-app.dark #login .ant-input-password input:-webkit-autofill:hover, #app.login-app.dark #login .ant-input-password input:-webkit-autofill:focus { -webkit-text-fill-color: var(--login-input-color, #d6dce6) !important; caret-color: var(--login-input-color, #d6dce6) !important; -webkit-box-shadow: 0 0 0 1000px var(--login-input-bg, #1d2433) inset !important; box-shadow: 0 0 0 1000px var(--login-input-bg, #1d2433) inset !important; transition: background-color 9999s ease-in-out 0s !important } #app.login-app.dark #login input.ant-input:-moz-autofill, #app.login-app.dark #login .ant-input-password input:-moz-autofill { -moz-text-fill-color: var(--login-input-color, #d6dce6) !important; caret-color: var(--login-input-color, #d6dce6) !important; box-shadow: 0 0 0 1000px var(--login-input-bg, #1d2433) inset !important } #app.login-app.dark #login { --login-input-bg: var(--dark-color-surface-200); --login-input-color: var(--dark-color-text-primary) } /* Subscription page - dark theme fixes */ .dark .ant-descriptions-bordered .ant-descriptions-view { background-color: transparent; } .dark .ant-descriptions-bordered .ant-descriptions-item-label, .dark .ant-descriptions-bordered .ant-descriptions-item-content { background-color: transparent; border-color: var(--dark-color-surface-400); } .dark .ant-descriptions-bordered .ant-descriptions-item-label { color: #a9c2d6; /* softer label color */ } .dark .ant-descriptions-bordered .ant-descriptions-item-content { color: var(--dark-color-text-primary); } .dark .ant-input[readonly], .dark .ant-input-textarea .ant-input[readonly] { background-color: var(--dark-color-surface-200); color: var(--dark-color-text-primary); }