@charset "UTF-8";

/* css 样式统一 */
html,
body,
ul,
li,
ol,
dl,
dd,
dt,
p,
h1,
h2,
h3,
h4,
h5,
h6,
form,
fieldset,
legend,
input,
button,
textarea,
div,
th,
td {
  margin: 0;
  box-sizing: border-box;
  padding: 0;

  /* -webkit-tap-highlight-color:transparent; */
}

html {
  overflow: -moz-scrollbars;
  overflow-y: auto;
  -webkit-text-size-adjust: 100%;
}

/* 去掉标题默认大小 */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal;
}

/* 标签格式化 */
i {
  font-style: normal;
}

/* 列表 */
/* ul,
ol {
  list-style: none;
} */

/* 去掉蓝色边框 */
fieldset,
img {
  border: 0;
}

img {
  vertical-align: middle;
}

select,
input {
  border: none;
  outline: 0;
}

/* 防止拖动 影响布局 */
textarea {
  overflow: auto;
  font: inherit;
  resize: none;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}
html,
body {
  width: 100%;
  min-width: 1400px;
  height: 100%;
  color: #353535;
  font-size: 14px;
  overflow: auto;
}

body {
  background-color: #F5F5F5;
}

button {
  border: none;
  font-size: 14px;
  background-color: unset;
}

svg {
  width: 1em;
  height: 1em;
  vertical-align: bottom;
}

::-webkit-scrollbar {
  width: 6px;
}

::-webkit-scrollbar-track {
  border-radius: 3px;
}

::-webkit-scrollbar-thumb {
  background-color: #c4c4c4;
  border-radius: 3px;
}
/* 公众号文档样式 */
.tiptap.ProseMirror {
  min-height: 960px;
  outline: none;
  color: rgba(0, 0, 0, 0.9);
  font-size: 17px;
  line-height: 1.6;
  text-align: justify;
}

.ProseMirror * {
  max-width: 100%;
  margin: 0;
  padding: 0;
  box-sizing: border-box !important;
  word-wrap: break-word !important;
}

.ProseMirror p {
  clear: both;
  min-height: 1em;
}

.ProseMirror>p {
  margin-top: 0;
  margin-bottom: 24px;
}

.list-paddingleft-1 {
  padding-left: 1.2em;
}

.ProseMirror .code-snippet {
  margin: 10px 0;
  display: block;
  overflow-x: auto;
  font-size: 14px;
  padding: 1em 1em 1em 3em;
  color: #333;
  position: relative;
  background-color: #fafafa;
  border: 1px solid #f0f0f0;
  border-radius: 2px;
  counter-reset: line;
  white-space: normal;
  -webkit-overflow-scrolling: touch;
}

.ProseMirror .code-snippet code {
  display: flex;
  position: relative;
  text-align: left;
  white-space: pre;
  font-size: 14px;
  font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
}

.ProseMirror img.ProseMirror-separator {
  width: 0 !important;
}

.ProseMirror .video_iframe {
  background-color: #000000;
  width: 100% !important;
  position: static;
}

.ProseMirror a {
  color: #576b95;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.ProseMirror .h5_image_link,
.ProseMirror .weapp_image_link {
  position: relative;
  display: inline-block;
  font-size: 0;
}

.ProseMirror .h5_image_link::after {
  content: " ";
  display: block;
  position: absolute;
  top: 9px;
  right: 9px;
  width: 26px;
  height: 26px;
  background: url("data:image/png;base64,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") no-repeat center;
  background-size: contain;
}

.ProseMirror .weapp_image_link::after {
  content: " ";
  display: block;
  position: absolute;
  top: 9px;
  right: 9px;
  width: 26px;
  height: 26px;
  background: url("data:image/png;base64,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") no-repeat center;
  background-size: contain;
}

/* footnote */
ol.footnotes:has(li) {
  border-top: 1px solid rgb(0, 166, 255);
}
ol {
  margin-top: 20px;
  padding: 20px 0;
  list-style-type: decimal;
  padding-left: 20px;
}
/* header头部样式 */
.header {
  display: flex;
  width: 100%;
  min-width: 1400px;
  height: 50px;
  padding: 8px 8px 8px 20vw;
  position: absolute;
  top: 0;
  background-color: #fff;
  z-index: 99;
}

.header .modules-wrapper {
  margin: 0 auto;
  display: flex;
}

.header .module-group {
  display: flex;
  background-color: rgba(0, 0, 0, 0.03);
  border-radius: 4px;
}

.header .module-group.left {
  margin-right: 24px;
}

.header .dropdown .dropdown-toggle .icon-arrow {
  display: inline-block;
  width: 0;
  height: 0px;
  border-width: 4px 4px 0 4px;
  border-style: solid;
  vertical-align: middle;
  border-color: currentColor transparent transparent transparent;
  transform: scale(0.8);
  margin-left: 4px;
}

.header .dropdown .dropdown-menu {
  min-width: 120px;
  padding: 6px 0;
  line-height: 1.2;
  border-radius: 4px;
  background-color: #fff;
  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.1)
}

.header .dropdown .menu-item {
  position: relative;
  display: flex;
  align-items: center;
  font-size: 14px;
  padding: 6px 12px;
  cursor: pointer;
}

.header .dropdown .menu-item:hover {
  background-color: #fafafa;
}

.header .module-item {
  padding: 8px 12px;
  cursor: pointer;
}

.header .module-item.disabled {
  cursor: not-allowed;
}

.header .module-item:hover {
  background-color: rgba(0, 0, 0, 0.04);
  transition: all .2s;
}

#image_uploader {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  cursor: pointer;
}

/* toolbar工具栏样式 */
.toolbar-wrapper {
  display: flex;
  width: 100%;
  min-width: 1400px;
  padding: 8px 8px 8px 20vw;
  position: absolute;
  top: 50px;
  background-color: #fafafa;
  z-index: 9;
}

#toolbar {
  display: flex;
  margin: 0 auto;
}

#toolbar .btn-group {
  display: flex;
  padding: 0 6px;
}

#toolbar .btn-group+.btn-group {
  border-left: 1px solid #ddd;
}

#toolbar .edit-btn {
  height: 24px;
  padding: 0 3px;
  color: #4A4A51;
  font-size: 18px;
  line-height: 1;
  border-radius: 2px;
}

#toolbar .edit-btn:hover {
  background-color: rgba(0, 0, 0, 0.07);
}

#toolbar .edit-btn.active {
  color: #07c160;
}

#toolbar .edit-btn+.edit-btn {
  margin-left: 6px;
}

/* 颜色选择器 */
#toolbar .picker {
  position: relative;
}

#toolbar .picker .colorlump {
  position: absolute;
  display: inline-block;
  height: 2px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  border-radius: 1px;
}

/* 下拉菜单 */
#toolbar .dropdown {
  cursor: default;
}

#toolbar .dropdown .dropdown-toggle {
  padding: 0 2px;
  border: none;
  color: inherit;
  font-size: inherit;
  background-color: unset;
}

#toolbar .dropdown .dropdown-toggle.disabled {
  cursor: not-allowed;
  color: #aaa;
}

#toolbar .dropdown .dropdown-toggle .icon-arrow {
  display: inline-block;
  width: 0;
  height: 0px;
  border-width: 4px 4px 0 4px;
  border-style: solid;
  vertical-align: middle;
  border-color: currentColor transparent transparent transparent;
  transform: scale(0.8);
  margin-left: 4px;
}

#toolbar .dropdown .dropdown-menu {
  min-width: 120px;
  padding: 6px 0;
  line-height: 1.2;
  border-radius: 4px;
  background-color: #fff;
  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.1)
}

#toolbar .dropdown .menu-item {
  display: flex;
  align-items: center;
  font-size: 14px;
  padding: 6px 12px;
}

#toolbar .dropdown .menu-item:hover {
  background-color: #fafafa;
}

#toolbar .dropdown .menu-item.active {
  color: #07c160;
}

#toolbar .dropdown .menu-item svg {
  color: inherit;
  margin-right: 10px;
}

/* 表情菜单 start*/
#toolbar .dropdown-emoji .emoji-list {
  display: flex;
  flex-wrap: wrap;
  width: 408px;
  max-height: 440px;
  padding: 6px 12px;
  overflow-y: auto;
}

#toolbar .dropdown-emoji .emoji-item {
  padding: 5px;
  border-radius: 4px;
  cursor: pointer;
}

#toolbar .dropdown-emoji .emoji-item:hover {
  transition: all 0.3s;
  background-color: rgba(0 0 0 / 5%);
}

#toolbar .dropdown-emoji .emoji-item .icon-emoji {
  width: 32px;
  height: 32px;
  background-size: 100% auto;
  background-image: url("images/emoji_sprite.ab767640.png")
}

/* 侧壁栏 */
.sidebar {
  position: absolute;
  width: 24vw;
  min-width: 320px;
  top: 90px;
  bottom: 0;
  left: 0;
  overflow: auto;
  /* display: none; */
  background-color: #fff;
  z-index: 2;
}

.sidebar .tabs {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.sidebar .tabs-nav {
  display: flex;
  border-bottom: 1px solid #eee;
}

.sidebar .tabs-nav .tab-item {
  flex: 1;
  padding: 15px;
  font-size: 16px;
  text-align: center;
  cursor: pointer;
}

.sidebar .tabs-nav .tab-item:hover,
.sidebar .tabs-nav .tab-item.active {
  color: #07c160;
  transition: all 0.3s;
}

.sidebar .tabs-nav .tab-item.active {
  font-weight: bold;
}

.sidebar .graphic-list .graphic-item,
.sidebar .template-list .template-item {
  margin: 12px;
  padding: 10px 15px;
  border-radius: 4px;
}

.sidebar .template-list .template-item {
  max-height: 160px;
  overflow-y: auto;
}

.sidebar .graphic-list .graphic-item:hover,
.sidebar .template-list .template-item:hover {
  box-shadow: inset 0 0 10px 0px #ccc;
  transition: all 0.3s;
}

.sidebar .tabs-content {
  overflow: auto;
  color: rgba(0, 0, 0, 0.9);
  font-size: 17px;
  line-height: 1.6;
}

.sidebar .tabs-content * {
  max-width: 100%;
  box-sizing: border-box !important;
}

.sidebar .tabs-content p {
  clear: both;
  min-height: 1em;
}

.sidebar .tabs-content>p {
  margin-top: 0;
  margin-bottom: 24px;
}

/* sidebar hide-show button CSS */
.sidebar .hide-show {
  align-self: center;
  background-color: #fff;
  background-image: none;
  background-position: 0 90%;
  background-repeat: repeat no-repeat;
  background-size: 4px 3px;
  border-radius: 15px 225px 255px 15px 15px 255px 225px 15px;
  border-style: solid;
  border-width: 2px;
  box-shadow: rgba(0, 0, 0, .2) 15px 28px 25px -18px;
  box-sizing: border-box;
  color: #41403e;
  cursor: pointer;
  display: inline-block;
  font-family: Neucha, sans-serif;
  font-size: 1rem;
  line-height: 23px;
  outline: none;
  padding: .75rem;
  text-decoration: none;
  transition: all 235ms ease-in-out;
  border-bottom-left-radius: 15px 255px;
  border-bottom-right-radius: 225px 15px;
  border-top-left-radius: 255px 15px;
  border-top-right-radius: 15px 225px;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
}

.sidebar .hide-show:hover {
  box-shadow: rgba(0, 0, 0, .3) 2px 8px 8px -5px;
  transform: translate3d(0, 2px, 0);
}

.sidebar .hide-show:focus {
  box-shadow: rgba(0, 0, 0, .3) 2px 8px 4px -6px;
}


/* 编辑器 */
.editor-wrapper {
  height: 100%;
  /* overflow: auto; */
  padding-top: 120px;
  padding-left: 20vw;
}

.editor-container {
  position: relative;
  width: 768px;
  margin: 0 auto;
  z-index: 1;
}

.editor {
  padding: 45px 95px 115px;
  position: relative;
  margin-bottom: -69px;
  border-radius: 6px;
  background-color: #fff;
  box-shadow: 0 1px 5px 0 rgba(0, 0, 0, 0.05);
}

/* 底部栏 */
.footer {
  position: sticky;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 768px;
  padding: 20px 20px 15px;
  bottom: 0;
  border-radius: 6px;
  background-color: #fff;
  box-shadow: 0 -1px 4px 0 rgba(0, 0, 0, 0.05);
}

.footer .info {
  color: #8d8d8d;
  display: flex;
}

.footer .info .save-time {
  margin-right: 24px;
}

.footer .operation {
  display: flex;
}

.footer .operation .btn {
  width: 96px;
  height: 34px;
  margin-left: 6px;
  line-height: 34px;
  text-align: center;
  border-radius: 4px;
  border: 1px solid #e7e7e8;
  cursor: pointer;
}

.footer .operation .btn:hover {
  background: #e7e7e8;
  transition: all 0.3s;
}

/* 弹窗 */
.modal .modal-dialog {
  width: 560px;
}

.modal .tabs-nav {
  display: flex;
  margin-bottom: 24px;
  border-bottom: 1px solid #eee;
}

.modal .tab-item {
  padding: 4px;
  margin-bottom: -1px;
  border-bottom: 2px solid transparent;
  cursor: pointer;
}

.modal .tab-item.active {
  border-bottom-color: #07c160;
}

.modal .tab-item+.tab-item {
  margin-left: 12px;
}

.modal .form-item {
  margin-bottom: 15px;
}

.modal .form-item label {
  display: inline-block;
  min-width: 102px;
  margin-right: 12px;
  text-align: right;
}

.modal input[type="text"] {
  width: 320px;
  height: 32px;
  padding: 6px 12px;
  border-radius: 4px;
  border: 1px solid #eee;
}

.modal input[type="text"]:focus {
  border-color: #07c160;
}

/* 插入视频弹窗 */
#video_uploader {
  display: none;
}

#video_modal #video_uploader~.filename {
  max-width: 240px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.modal .btn-upload-video {
  display: inline-block;
  margin-right: 12px;
  padding: 6px 12px;
  border-radius: 4px;
  border: 1px solid #E3E4E5;
  background-color: #F6F7F8;
  cursor: pointer;
}

.modal .btn-upload-video:hover {
  color: #858585;
  background-color: #EFF0F2;
}

#video_modal .tip {
  margin-top: 12px;
  color: #b1b2b3;
  font-size: 12px;
}
/* by zhangxinxu(.com) 2021-05-29 */
.hr-solid {
    border: 0;
    border-top: 1px solid #d0d0d5;
}
.hr-dotted {
    border: 0;
    border-top: 1px dotted #a2a9b6;
}
.hr-dotted2 {
    border: 0;
    border-top: 2px dotted #a2a9b6;
}
.hr-dashed {
    border: 0;
    border-top: 1px dashed #a2a9b6;
}
.hr-dashed2 {
    border: 0;
    border-top: 2px dashed #a2a9b6;
}
.hr-double {
    border: 0;
    border-top: 3px double #d0d0d5;
}
.hr-dashed-fixed {
    border: 0;
    padding-top: 1px;
    /* for IE浏览器 */
    background: repeating-linear-gradient(to right, #a2a9b6 0px, #a2a9b6 4px, transparent 0px, transparent 10px);
    /* for 现代浏览器 */
    background: repeating-linear-gradient(to right, #a2a9b6 0 var(--dashed-filled, 4px), transparent 0 calc(var(--dashed-filled, 4px) + var(--dashed-open, 6px)));
}
.hr-edge-weak {
    border: 0;
    padding-top: 1px;
    background: linear-gradient(to right, transparent, #d0d0d5, transparent);
}
.hr-twill {
    border: 0;
    padding: 3px;
    background: repeating-linear-gradient(135deg, #a2a9b6 0px, #a2a9b6 1px, transparent 1px, transparent 6px);
}
/* 现代浏览器only */
.hr-twill-colorful {
    border: 0;
    padding: 3px;
    background: linear-gradient(135deg, red, orange,green, blue, purple);
    --mask-image: repeating-linear-gradient(135deg, #000 0px, #000 1px, transparent 1px, transparent 6px);
    -webkit-mask-image: var(--mask-image);
    mask-image: var(--mask-image);
}
.hr-wavy {
    border: 0;
    color: #d0d0d5;
    height: .5em;
    white-space: nowrap;
    letter-spacing: 100vw;
    padding-top: .5em;
    overflow: hidden;
}

.hr-shadow {
    border: 0;
    padding-top: 10px;
    color: #d0d0d5;
    border-top: 1px solid rgba(0,0,0,.1);
    box-shadow: inset 0 10px 10px -10px;
}

.hr-mid-circle,
.hr-mid-square {
    border: 0;
    color: #d0d0d5;
    background: linear-gradient(currentColor, currentColor) no-repeat center;
    background-size: 100% 1px;
}
.hr-space-square {
    border: 0;
    color: #d0d0d5;
    background: linear-gradient(currentColor, currentColor) no-repeat center;
    background-size: calc(100% - 1.5em - 6px) 1px;
    display: flex;
    justify-content: space-between;
}

.hr-double-arrow {
    color: #d0d0d5;
    border: double;
    border-width: 3px 5px;
    border-color: #d0d0d5 transparent;
    height: 1px;
    overflow: visible;
    margin-left: 20px;
    margin-right: 20px;
    position: relative;
}

.hr-solid-content,
.hr-dashed-content,
.hr-fade-content,
.hr-mid-border-content {
    color: #a2a9b6;
    border: 0;
    font-size: 12px;
    padding: 1em 0;
    position: relative;
    overflow: hidden;
}
.hr-fade-content {
    -webkit-mask-image: linear-gradient(to right, transparent, black, transparent);
    mask-image: linear-gradient(to right, transparent, black, transparent);
}

/*! Pickr 1.9.0 MIT | https://github.com/Simonwep/pickr */
.pickr{position:relative;overflow:visible;transform:translateY(0)}.pickr *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pickr .pcr-button{position:relative;height:2em;width:2em;padding:.5em;cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Helvetica Neue",Arial,sans-serif;border-radius:.15em;background:url("data:image/svg+xml;utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 50 50\" stroke=\"%2342445A\" stroke-width=\"5px\" stroke-linecap=\"round\"><path d=\"M45,45L5,5\"></path><path d=\"M45,5L5,45\"></path></svg>") no-repeat center;background-size:0;transition:all .3s}.pickr .pcr-button::before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url("data:image/svg+xml;utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 2 2\"><path fill=\"white\" d=\"M1,0H2V1H1V0ZM0,1H1V2H0V1Z\"/><path fill=\"gray\" d=\"M0,0H1V1H0V0ZM1,1H2V2H1V1Z\"/></svg>");background-size:.5em;border-radius:.15em;z-index:-1}.pickr .pcr-button::before{z-index:initial}.pickr .pcr-button::after{position:absolute;content:"";top:0;left:0;height:100%;width:100%;transition:background .3s;background:var(--pcr-color);border-radius:.15em}.pickr .pcr-button.clear{background-size:70%}.pickr .pcr-button.clear::before{opacity:0}.pickr .pcr-button.clear:focus{box-shadow:0 0 0 1px rgba(255,255,255,.85),0 0 0 3px var(--pcr-color)}.pickr .pcr-button.disabled{cursor:not-allowed}.pickr *,.pcr-app *{box-sizing:border-box;outline:none;border:none;-webkit-appearance:none}.pickr input:focus,.pickr input.pcr-active,.pickr button:focus,.pickr button.pcr-active,.pcr-app input:focus,.pcr-app input.pcr-active,.pcr-app button:focus,.pcr-app button.pcr-active{box-shadow:0 0 0 1px rgba(255,255,255,.85),0 0 0 3px var(--pcr-color)}.pickr .pcr-palette,.pickr .pcr-slider,.pcr-app .pcr-palette,.pcr-app .pcr-slider{transition:box-shadow .3s}.pickr .pcr-palette:focus,.pickr .pcr-slider:focus,.pcr-app .pcr-palette:focus,.pcr-app .pcr-slider:focus{box-shadow:0 0 0 1px rgba(255,255,255,.85),0 0 0 3px rgba(0,0,0,.25)}.pcr-app{position:fixed;display:flex;flex-direction:column;z-index:10000;border-radius:.1em;background:#fff;opacity:0;visibility:hidden;transition:opacity .3s,visibility 0s .3s;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Helvetica Neue",Arial,sans-serif;box-shadow:0 .15em 1.5em 0 rgba(0,0,0,.1),0 0 1em 0 rgba(0,0,0,.03);left:0;top:0}.pcr-app.visible{transition:opacity .3s;visibility:visible;opacity:1}.pcr-app .pcr-swatches{display:flex;flex-wrap:wrap;margin-top:.75em}.pcr-app .pcr-swatches.pcr-last{margin:0}@supports(display: grid){.pcr-app .pcr-swatches{display:grid;align-items:center;grid-template-columns:repeat(auto-fit, 1.75em)}}.pcr-app .pcr-swatches>button{font-size:1em;position:relative;width:calc(1.75em - 5px);height:calc(1.75em - 5px);border-radius:.15em;cursor:pointer;margin:2.5px;flex-shrink:0;justify-self:center;transition:all .15s;overflow:hidden;background:rgba(0,0,0,0);z-index:1}.pcr-app .pcr-swatches>button::before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url("data:image/svg+xml;utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 2 2\"><path fill=\"white\" d=\"M1,0H2V1H1V0ZM0,1H1V2H0V1Z\"/><path fill=\"gray\" d=\"M0,0H1V1H0V0ZM1,1H2V2H1V1Z\"/></svg>");background-size:6px;border-radius:.15em;z-index:-1}.pcr-app .pcr-swatches>button::after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--pcr-color);border:1px solid rgba(0,0,0,.05);border-radius:.15em;box-sizing:border-box}.pcr-app .pcr-swatches>button:hover{filter:brightness(1.05)}.pcr-app .pcr-swatches>button:not(.pcr-active){box-shadow:none}.pcr-app .pcr-interaction{display:flex;flex-wrap:wrap;align-items:center;margin:0 -0.2em 0 -0.2em}.pcr-app .pcr-interaction>*{margin:0 .2em}.pcr-app .pcr-interaction input{letter-spacing:.07em;font-size:.75em;text-align:center;cursor:pointer;color:#75797e;background:#f1f3f4;border-radius:.15em;transition:all .15s;padding:.45em .5em;margin-top:.75em}.pcr-app .pcr-interaction input:hover{filter:brightness(0.975)}.pcr-app .pcr-interaction input:focus{box-shadow:0 0 0 1px rgba(255,255,255,.85),0 0 0 3px rgba(66,133,244,.75)}.pcr-app .pcr-interaction .pcr-result{color:#75797e;text-align:left;flex:1 1 8em;min-width:8em;transition:all .2s;border-radius:.15em;background:#f1f3f4;cursor:text}.pcr-app .pcr-interaction .pcr-result::-moz-selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-result::selection{background:#4285f4;color:#fff}.pcr-app .pcr-interaction .pcr-type.active{color:#fff;background:#4285f4}.pcr-app .pcr-interaction .pcr-save,.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear{color:#fff;width:auto}.pcr-app .pcr-interaction .pcr-save,.pcr-app .pcr-interaction .pcr-cancel,.pcr-app .pcr-interaction .pcr-clear{color:#fff}.pcr-app .pcr-interaction .pcr-save:hover,.pcr-app .pcr-interaction .pcr-cancel:hover,.pcr-app .pcr-interaction .pcr-clear:hover{filter:brightness(0.925)}.pcr-app .pcr-interaction .pcr-save{background:#4285f4}.pcr-app .pcr-interaction .pcr-clear,.pcr-app .pcr-interaction .pcr-cancel{background:#f44250}.pcr-app .pcr-interaction .pcr-clear:focus,.pcr-app .pcr-interaction .pcr-cancel:focus{box-shadow:0 0 0 1px rgba(255,255,255,.85),0 0 0 3px rgba(244,66,80,.75)}.pcr-app .pcr-selection .pcr-picker{position:absolute;height:18px;width:18px;border:2px solid #fff;border-radius:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pcr-app .pcr-selection .pcr-color-palette,.pcr-app .pcr-selection .pcr-color-chooser,.pcr-app .pcr-selection .pcr-color-opacity{position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;flex-direction:column;cursor:grab;cursor:-webkit-grab}.pcr-app .pcr-selection .pcr-color-palette:active,.pcr-app .pcr-selection .pcr-color-chooser:active,.pcr-app .pcr-selection .pcr-color-opacity:active{cursor:grabbing;cursor:-webkit-grabbing}.pcr-app[data-theme=monolith]{width:14.25em;max-width:95vw;padding:.8em}.pcr-app[data-theme=monolith] .pcr-selection{display:flex;flex-direction:column;justify-content:space-between;flex-grow:1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview{position:relative;z-index:1;width:100%;height:1em;display:flex;flex-direction:row;justify-content:space-between;margin-bottom:.5em}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview::before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url("data:image/svg+xml;utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 2 2\"><path fill=\"white\" d=\"M1,0H2V1H1V0ZM0,1H1V2H0V1Z\"/><path fill=\"gray\" d=\"M0,0H1V1H0V0ZM1,1H2V2H1V1Z\"/></svg>");background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-last-color{cursor:pointer;transition:background-color .3s,box-shadow .3s;border-radius:.15em 0 0 .15em;z-index:2}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-current-color{border-radius:0 .15em .15em 0}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-last-color,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-preview .pcr-current-color{background:var(--pcr-color);width:50%;height:100%}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-palette{width:100%;height:8em;z-index:1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-palette .pcr-palette{border-radius:.15em;width:100%;height:100%}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-palette .pcr-palette::before{position:absolute;content:"";top:0;left:0;width:100%;height:100%;background:url("data:image/svg+xml;utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 2 2\"><path fill=\"white\" d=\"M1,0H2V1H1V0ZM0,1H1V2H0V1Z\"/><path fill=\"gray\" d=\"M0,0H1V1H0V0ZM1,1H2V2H1V1Z\"/></svg>");background-size:.5em;border-radius:.15em;z-index:-1}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity{height:.5em;margin-top:.75em}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser .pcr-picker,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity .pcr-picker{top:50%;transform:translateY(-50%)}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser .pcr-slider,.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity .pcr-slider{flex-grow:1;border-radius:50em}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-chooser .pcr-slider{background:linear-gradient(to right, hsl(0, 100%, 50%), hsl(60, 100%, 50%), hsl(120, 100%, 50%), hsl(180, 100%, 50%), hsl(240, 100%, 50%), hsl(300, 100%, 50%), hsl(0, 100%, 50%))}.pcr-app[data-theme=monolith] .pcr-selection .pcr-color-opacity .pcr-slider{background:linear-gradient(to right, transparent, black),url("data:image/svg+xml;utf8, <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 2 2\"><path fill=\"white\" d=\"M1,0H2V1H1V0ZM0,1H1V2H0V1Z\"/><path fill=\"gray\" d=\"M0,0H1V1H0V0ZM1,1H2V2H1V1Z\"/></svg>");background-size:100%,.25em}

.dropdown {
  position: relative;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  display: none;
  z-index: 999;
  background-color: #fff;
}
.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1001;
  display: none;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  opacity: 0;
}

.modal.show {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s;
}

.modal.fade {
  opacity: 1;
}

.modal .modal-dialog {
  border-radius: 4px;
  background-color: #fff;
}

.modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  border-bottom: 1px solid #ebebeb;
}

.modal-header .modal-title {
  font-size: 16px;
}

.modal-header .btn-close {
  font-size: 24px;
  cursor: pointer;
}

.modal-body {
  padding: 16px;
}

.modal-footer {
  display: flex;
  justify-content: center;
  padding: 12px 16px 24px;
}

.modal-footer .btn {
  min-width: 92px;
  margin: 0 12px;
  padding: 6px 12px;
  border-radius: 4px;
  cursor: pointer;
}

.modal-footer .btn-save {
  color: #fff;
  border: 1px solid #07C160;
  background-color: #07C160;
}

.modal-footer .btn-save:hover {
  color: #AFDAAC;
  border-color: #06AD56;
  background-color: #06AD56;
}

.modal-footer .btn-close {
  border: 1px solid #E3E4E5;
  background-color: #F6F7F8;
}

.modal-footer .btn-close:hover {
  color: #858585;
  border-color: #E4E8EB;
  background-color: #EFF0F2;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #000;
  opacity: 0;
  z-index: 1000;
  transition: opacity 0.3s;
}

.modal-backdrop.fade {
  opacity: 0.5;
}
.tabs-content .tab-pane {
  display: none;
}

.tabs-content .tab-pane.active {
  display: block;
}