/*!
 *
 * Super simple wysiwyg editor v0.8.18
 * https://summernote.org
 *
 *
 * Copyright 2013- Alan Hong. and other contributors
 * summernote may be freely distributed under the MIT license.
 *
 * Date: 2020-05-20T18:09Z
 *
 */
.note-editor{position:relative}.note-editor .note-dropzone{position:absolute;display:none;z-index:100;color:#87cefa;background-color:#fff;opacity:.95}.note-editor .note-dropzone .note-dropzone-message{display:table-cell;vertical-align:middle;text-align:center;font-size:28px;font-weight:700}.note-editor .note-dropzone.hover{color:#098ddf}.note-editor.dragover .note-dropzone{display:table}.note-editor .note-editing-area{position:relative}.note-editor .note-editing-area .note-editable{outline:none}.note-editor .note-editing-area .note-editable sup{vertical-align:super}.note-editor .note-editing-area .note-editable sub{vertical-align:sub}.note-editor .note-editing-area .note-editable img.note-float-left{margin-right:10px}.note-editor .note-editing-area .note-editable img.note-float-right{margin-left:10px}.note-editor.note-frame,.note-editor.note-airframe{border:1px solid #00000032}.note-editor.note-frame.codeview .note-editing-area .note-editable,.note-editor.note-airframe.codeview .note-editing-area .note-editable{display:none}.note-editor.note-frame.codeview .note-editing-area .note-codable,.note-editor.note-airframe.codeview .note-editing-area .note-codable{display:block}.note-editor.note-frame .note-editing-area,.note-editor.note-airframe .note-editing-area{overflow:hidden}.note-editor.note-frame .note-editing-area .note-editable,.note-editor.note-airframe .note-editing-area .note-editable{padding:10px;overflow:auto;word-wrap:break-word}.note-editor.note-frame .note-editing-area .note-editable[contenteditable=false],.note-editor.note-airframe .note-editing-area .note-editable[contenteditable=false]{background-color:#8080801d}.note-editor.note-frame .note-editing-area .note-codable,.note-editor.note-airframe .note-editing-area .note-codable{display:none;width:100%;padding:10px;border:none;box-shadow:none;font-family:Menlo,Monaco,monospace,sans-serif;font-size:14px;color:#ccc;background-color:#222;resize:none;outline:none;-ms-box-sizing:border-box;box-sizing:border-box;border-radius:0;margin-bottom:0}.note-editor.note-frame.fullscreen,.note-editor.note-airframe.fullscreen{position:fixed;top:0;left:0;width:100% !important;z-index:11050}.note-editor.note-frame.fullscreen .note-resizebar,.note-editor.note-airframe.fullscreen .note-resizebar{display:none}.note-editor.note-frame .note-status-output,.note-editor.note-airframe .note-status-output{display:block;width:100%;font-size:14px;line-height:1.42857143;height:20px;margin-bottom:0;color:#000;border:0;border-top:1px solid #e2e2e2}.note-editor.note-frame .note-status-output:empty,.note-editor.note-airframe .note-status-output:empty{height:0;border-top:0 solid transparent}.note-editor.note-frame .note-status-output .pull-right,.note-editor.note-airframe .note-status-output .pull-right{float:right !important}.note-editor.note-frame .note-status-output .text-muted,.note-editor.note-airframe .note-status-output .text-muted{color:#777}.note-editor.note-frame .note-status-output .text-primary,.note-editor.note-airframe .note-status-output .text-primary{color:#286090}.note-editor.note-frame .note-status-output .text-success,.note-editor.note-airframe .note-status-output .text-success{color:#3c763d}.note-editor.note-frame .note-status-output .text-info,.note-editor.note-airframe .note-status-output .text-info{color:#31708f}.note-editor.note-frame .note-status-output .text-warning,.note-editor.note-airframe .note-status-output .text-warning{color:#8a6d3b}.note-editor.note-frame .note-status-output .text-danger,.note-editor.note-airframe .note-status-output .text-danger{color:#a94442}.note-editor.note-frame .note-status-output .alert,.note-editor.note-airframe .note-status-output .alert{margin:-7px 0 0 0;padding:7px 10px 2px 10px;border-radius:0;color:#000;background-color:#f5f5f5}.note-editor.note-frame .note-status-output .alert .note-icon,.note-editor.note-airframe .note-status-output .alert .note-icon{margin-right:5px}.note-editor.note-frame .note-status-output .alert-success,.note-editor.note-airframe .note-status-output .alert-success{color:#3c763d !important;background-color:#dff0d8 !important}.note-editor.note-frame .note-status-output .alert-info,.note-editor.note-airframe .note-status-output .alert-info{color:#31708f !important;background-color:#d9edf7 !important}.note-editor.note-frame .note-status-output .alert-warning,.note-editor.note-airframe .note-status-output .alert-warning{color:#8a6d3b !important;background-color:#fcf8e3 !important}.note-editor.note-frame .note-status-output .alert-danger,.note-editor.note-airframe .note-status-output .alert-danger{color:#a94442 !important;background-color:#f2dede !important}.note-editor.note-frame .note-statusbar,.note-editor.note-airframe .note-statusbar{background-color:#8080801d;border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-top:1px solid #00000032}.note-editor.note-frame .note-statusbar .note-resizebar,.note-editor.note-airframe .note-statusbar .note-resizebar{padding-top:1px;height:9px;width:100%;cursor:ns-resize}.note-editor.note-frame .note-statusbar .note-resizebar .note-icon-bar,.note-editor.note-airframe .note-statusbar .note-resizebar .note-icon-bar{width:20px;margin:1px auto;border-top:1px solid #00000032}.note-editor.note-frame .note-statusbar.locked .note-resizebar,.note-editor.note-airframe .note-statusbar.locked .note-resizebar{cursor:default}.note-editor.note-frame .note-statusbar.locked .note-resizebar .note-icon-bar,.note-editor.note-airframe .note-statusbar.locked .note-resizebar .note-icon-bar{display:none}.note-editor.note-frame .note-placeholder,.note-editor.note-airframe .note-placeholder{padding:10px}.note-editor.note-airframe{border:0}.note-editor.note-airframe .note-editing-area .note-editable{padding:0}.note-popover.popover{display:none;max-width:none}.note-popover.popover .popover-content a{display:inline-block;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle}.note-popover.popover .arrow{left:20px !important}.note-toolbar{position:relative}.note-popover .popover-content,.note-editor .note-toolbar{margin:0;padding:0 0 5px 5px}.note-popover .popover-content>.note-btn-group,.note-editor .note-toolbar>.note-btn-group{margin-top:5px;margin-left:0;margin-right:5px}.note-popover .popover-content .note-btn-group .note-table,.note-editor .note-toolbar .note-btn-group .note-table{min-width:0;padding:5px}.note-popover .popover-content .note-btn-group .note-table .note-dimension-picker,.note-editor .note-toolbar .note-btn-group .note-table .note-dimension-picker{font-size:18px}.note-popover .popover-content .note-btn-group .note-table .note-dimension-picker .note-dimension-picker-mousecatcher,.note-editor .note-toolbar .note-btn-group .note-table .note-dimension-picker .note-dimension-picker-mousecatcher{position:absolute !important;z-index:3;width:10em;height:10em;cursor:pointer}.note-popover .popover-content .note-btn-group .note-table .note-dimension-picker .note-dimension-picker-unhighlighted,.note-editor .note-toolbar .note-btn-group .note-table .note-dimension-picker .note-dimension-picker-unhighlighted{position:relative !important;z-index:1;width:5em;height:5em;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASAgMAAAAroGbEAAAACVBMVEUAAIj4+Pjp6ekKlAqjAAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfYAR0BKhmnaJzPAAAAG0lEQVQI12NgAAOtVatWMTCohoaGUY+EmIkEAEruEzK2J7tvAAAAAElFTkSuQmCC") repeat}.note-popover .popover-content .note-btn-group .note-table .note-dimension-picker .note-dimension-picker-highlighted,.note-editor .note-toolbar .note-btn-group .note-table .note-dimension-picker .note-dimension-picker-highlighted{position:absolute !important;z-index:2;width:1em;height:1em;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASAgMAAAAroGbEAAAACVBMVEUAAIjd6vvD2f9LKLW+AAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQfYAR0BKwNDEVT0AAAAG0lEQVQI12NgAAOtVatWMTCohoaGUY+EmIkEAEruEzK2J7tvAAAAAElFTkSuQmCC") repeat}.note-popover .popover-content .note-style .dropdown-style blockquote,.note-popover .popover-content .note-style .dropdown-style pre,.note-editor .note-toolbar .note-style .dropdown-style blockquote,.note-editor .note-toolbar .note-style .dropdown-style pre{margin:0;padding:5px 10px}.note-popover .popover-content .note-style .dropdown-style h1,.note-popover .popover-content .note-style .dropdown-style h2,.note-popover .popover-content .note-style .dropdown-style h3,.note-popover .popover-content .note-style .dropdown-style h4,.note-popover .popover-content .note-style .dropdown-style h5,.note-popover .popover-content .note-style .dropdown-style h6,.note-popover .popover-content .note-style .dropdown-style p,.note-editor .note-toolbar .note-style .dropdown-style h1,.note-editor .note-toolbar .note-style .dropdown-style h2,.note-editor .note-toolbar .note-style .dropdown-style h3,.note-editor .note-toolbar .note-style .dropdown-style h4,.note-editor .note-toolbar .note-style .dropdown-style h5,.note-editor .note-toolbar .note-style .dropdown-style h6,.note-editor .note-toolbar .note-style .dropdown-style p{margin:0;padding:0}.note-popover .popover-content .note-color-all .note-dropdown-menu,.note-editor .note-toolbar .note-color-all .note-dropdown-menu{min-width:337px}.note-popover .popover-content .note-color .dropdown-toggle,.note-editor .note-toolbar .note-color .dropdown-toggle{width:20px;padding-left:5px}.note-popover .popover-content .note-color .note-dropdown-menu .note-palette,.note-editor .note-toolbar .note-color .note-dropdown-menu .note-palette{display:inline-block;margin:0;width:160px}.note-popover .popover-content .note-color .note-dropdown-menu .note-palette:first-child,.note-editor .note-toolbar .note-color .note-dropdown-menu .note-palette:first-child{margin:0 5px}.note-popover .popover-content .note-color .note-dropdown-menu .note-palette .note-palette-title,.note-editor .note-toolbar .note-color .note-dropdown-menu .note-palette .note-palette-title{font-size:12px;margin:2px 7px;text-align:center;border-bottom:1px solid #eee}.note-popover .popover-content .note-color .note-dropdown-menu .note-palette .note-color-reset,.note-popover .popover-content .note-color .note-dropdown-menu .note-palette .note-color-select,.note-editor .note-toolbar .note-color .note-dropdown-menu .note-palette .note-color-reset,.note-editor .note-toolbar .note-color .note-dropdown-menu .note-palette .note-color-select{font-size:11px;margin:3px;padding:0 3px;cursor:pointer;width:100%;border-radius:5px}.note-popover .popover-content .note-color .note-dropdown-menu .note-palette .note-color-reset:hover,.note-popover .popover-content .note-color .note-dropdown-menu .note-palette .note-color-select:hover,.note-editor .note-toolbar .note-color .note-dropdown-menu .note-palette .note-color-reset:hover,.note-editor .note-toolbar .note-color .note-dropdown-menu .note-palette .note-color-select:hover{background:#eee}.note-popover .popover-content .note-color .note-dropdown-menu .note-palette .note-color-row,.note-editor .note-toolbar .note-color .note-dropdown-menu .note-palette .note-color-row{height:20px}.note-popover .popover-content .note-color .note-dropdown-menu .note-palette .note-color-select-btn,.note-editor .note-toolbar .note-color .note-dropdown-menu .note-palette .note-color-select-btn{display:none}.note-popover .popover-content .note-color .note-dropdown-menu .note-palette .note-holder-custom .note-color-btn,.note-editor .note-toolbar .note-color .note-dropdown-menu .note-palette .note-holder-custom .note-color-btn{border:1px solid #eee}.note-popover .popover-content .note-para .note-dropdown-menu,.note-editor .note-toolbar .note-para .note-dropdown-menu{min-width:228px;padding:5px}.note-popover .popover-content .note-para .note-dropdown-menu>div+div,.note-editor .note-toolbar .note-para .note-dropdown-menu>div+div{margin-left:5px}.note-popover .popover-content .note-dropdown-menu,.note-editor .note-toolbar .note-dropdown-menu{min-width:160px}.note-popover .popover-content .note-dropdown-menu.right,.note-editor .note-toolbar .note-dropdown-menu.right{right:0;left:auto}.note-popover .popover-content .note-dropdown-menu.right::before,.note-editor .note-toolbar .note-dropdown-menu.right::before{right:9px;left:auto !important}.note-popover .popover-content .note-dropdown-menu.right::after,.note-editor .note-toolbar .note-dropdown-menu.right::after{right:10px;left:auto !important}.note-popover .popover-content .note-dropdown-menu.note-check a i,.note-editor .note-toolbar .note-dropdown-menu.note-check a i{color:#949494;visibility:hidden}.note-popover .popover-content .note-dropdown-menu.note-check a.checked i,.note-editor .note-toolbar .note-dropdown-menu.note-check a.checked i{visibility:visible}.note-popover .popover-content .note-fontsize-10,.note-editor .note-toolbar .note-fontsize-10{font-size:10px}.note-popover .popover-content .note-color-palette,.note-editor .note-toolbar .note-color-palette{line-height:1}.note-popover .popover-content .note-color-palette div .note-color-btn,.note-editor .note-toolbar .note-color-palette div .note-color-btn{width:20px;height:20px;padding:0;margin:0;border:0;border-radius:0}.note-popover .popover-content .note-color-palette div .note-color-btn:hover,.note-editor .note-toolbar .note-color-palette div .note-color-btn:hover{transform:scale(1.2);transition:all .2s}.note-modal .modal-dialog{outline:0;border-radius:5px;box-shadow:0 3px 9px rgba(0,0,0,.5)}.note-modal .form-group{margin-left:0;margin-right:0}.note-modal .note-modal-form{margin:0}.note-modal .note-image-dialog .note-dropzone{min-height:100px;font-size:30px;line-height:4;color:#d3d3d3;text-align:center;border:4px dashed #d3d3d3;margin-bottom:10px}@-moz-document url-prefix(){.note-modal .note-image-input{height:auto}}.note-placeholder{position:absolute;display:none;color:gray}.note-handle .note-control-selection{position:absolute;display:none;border:1px solid #000}.note-handle .note-control-selection>div{position:absolute}.note-handle .note-control-selection .note-control-selection-bg{width:100%;height:100%;background-color:#000;-webkit-opacity:.3;-khtml-opacity:.3;-moz-opacity:.3;opacity:.3;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=30);filter:alpha(opacity=30)}.note-handle .note-control-selection .note-control-handle,.note-handle .note-control-selection .note-control-sizing,.note-handle .note-control-selection .note-control-holder{width:7px;height:7px;border:1px solid #000}.note-handle .note-control-selection .note-control-sizing{background-color:#000}.note-handle .note-control-selection .note-control-nw{top:-5px;left:-5px;border-right:none;border-bottom:none}.note-handle .note-control-selection .note-control-ne{top:-5px;right:-5px;border-bottom:none;border-left:none}.note-handle .note-control-selection .note-control-sw{bottom:-5px;left:-5px;border-top:none;border-right:none}.note-handle .note-control-selection .note-control-se{right:-5px;bottom:-5px;cursor:se-resize}.note-handle .note-control-selection .note-control-se.note-control-holder{cursor:default;border-top:none;border-left:none}.note-handle .note-control-selection .note-control-selection-info{right:0;bottom:0;padding:5px;margin:5px;color:#fff;background-color:#000;font-size:12px;border-radius:5px;-webkit-opacity:.7;-khtml-opacity:.7;-moz-opacity:.7;opacity:.7;-ms-filter:progid:DXImageTransform.Microsoft.Alpha(opacity=70);filter:alpha(opacity=70)}.note-hint-popover{min-width:100px;padding:2px}.note-hint-popover .popover-content{padding:3px;max-height:150px;overflow:auto}.note-hint-popover .popover-content .note-hint-group .note-hint-item{display:block !important;padding:3px}.note-hint-popover .popover-content .note-hint-group .note-hint-item.active,.note-hint-popover .popover-content .note-hint-group .note-hint-item:hover{display:block;clear:both;font-weight:400;line-height:1.4;color:#fff;white-space:nowrap;text-decoration:none;background-color:#428bca;outline:0;cursor:pointer}

/* ==========================================================
 * Bootstrap 组件兜底（前台未加载 bootstrap.css 时）
 * 编辑器内组件：统一挂在 .note-editor 下
 * 弹窗/浮层挂载在 body：使用 .note-modal / .note-popover
 * ========================================================== */

/* ----- 编辑器框架 ----- */
.note-editor.note-frame,
.note-editor.note-airframe {
    border: 1px solid #E4E6EF;
    border-radius: 4px;
    background: #fff;
}
.note-editor.panel {
    margin-bottom: 0;
    border-radius: 4px;
    box-shadow: none;
}
.note-editor.panel-default {
    border-color: #E4E6EF;
}
.note-editor .panel-heading.note-toolbar {
    padding: 8px 10px;
    background: #f8f9fb;
    border-bottom: 1px solid #E4E6EF;
    border-radius: 4px 4px 0 0;
}
.note-editor .note-toolbar {
    position: relative;
    z-index: 2;
}

/* ----- 按钮 ----- */
.note-editor .btn {
    display: inline-block;
    margin-bottom: 0;
    font-weight: 400;
    text-align: center;
    vertical-align: middle;
    touch-action: manipulation;
    cursor: pointer;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    border-radius: 4px;
    user-select: none;
    background-image: none;
    text-decoration: none;
    box-sizing: border-box;
}
.note-editor .btn:focus,
.note-editor .btn:hover {
    text-decoration: none;
    outline: 0;
}
.note-editor .btn-default,
.note-editor .btn-light {
    color: #555;
    background-color: #fff;
    border-color: #d3cfcf;
}
.note-editor .btn-default:hover,
.note-editor .btn-default:focus,
.note-editor .btn-light:hover,
.note-editor .btn-light:focus {
    color: #333;
    background-color: #f0f0f0;
    border-color: #c8c4c4;
}
.note-editor .btn-primary,
.note-editor .note-btn-primary {
    color: #fff;
    background-color: #337ab7;
    border-color: #2e6da4;
}
.note-editor .btn-primary:hover,
.note-editor .btn-primary:focus,
.note-editor .note-btn-primary:hover,
.note-editor .note-btn-primary:focus {
    color: #fff;
    background-color: #286090;
    border-color: #204d74;
}
.note-editor .btn-sm,
.note-editor .note-btn-group .note-btn {
    padding: 5px 10px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px;
}
.note-editor .note-btn {
    min-width: 30px;
    height: 30px;
    padding: 5px 8px;
    line-height: 1.2;
}
.note-editor .note-btn-group .note-btn i {
    font-style: normal;
}

/* ----- 按钮组 / 下拉 ----- */
.note-editor .btn-group,
.note-editor .note-btn-group {
    position: relative;
    display: inline-block;
    vertical-align: middle;
}
.note-editor .btn-group > .btn,
.note-editor .note-btn-group > .btn,
.note-editor .note-btn-group > .note-btn {
    position: relative;
    float: left;
}
.note-editor .btn-group > .btn + .btn,
.note-editor .btn-group > .btn + .btn-group,
.note-editor .btn-group > .btn-group + .btn,
.note-editor .btn-group > .btn-group + .btn-group,
.note-editor .note-btn-group > .note-btn + .note-btn {
    margin-left: -1px;
}
.note-editor .btn-group > .btn:first-child,
.note-editor .note-btn-group > .note-btn:first-child {
    margin-left: 0;
}
.note-editor .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle),
.note-editor .note-btn-group > .note-btn:first-child:not(:last-child):not(.dropdown-toggle) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.note-editor .btn-group > .btn:last-child:not(:first-child),
.note-editor .btn-group > .dropdown-toggle:not(:first-child),
.note-editor .note-btn-group > .note-btn:last-child:not(:first-child),
.note-editor .note-btn-group > .dropdown-toggle:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.note-editor .btn-group > .btn + .dropdown-toggle,
.note-editor .note-btn-group > .note-btn + .dropdown-toggle {
    padding-left: 8px;
    padding-right: 8px;
}
.note-editor .btn-group.open > .dropdown-toggle,
.note-editor .note-btn-group.open > .dropdown-toggle {
    outline: 0;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}
.note-editor .btn-group.open > .dropdown-menu,
.note-editor .note-btn-group.open > .dropdown-menu,
.note-editor .btn-group.open > .note-dropdown-menu,
.note-editor .note-btn-group.open > .note-dropdown-menu {
    display: block;
}
.note-editor .dropdown-menu,
.note-editor .note-dropdown-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    min-width: 160px;
    margin: 2px 0 0;
    padding: 5px 0;
    list-style: none;
    font-size: 14px;
    text-align: left;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 4px;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
    background-clip: padding-box;
    box-sizing: border-box;
}
.note-editor .dropdown-menu.right,
.note-editor .note-dropdown-menu.right {
    right: 0;
    left: auto;
}
.note-editor .dropdown-menu > li > a,
.note-editor .note-dropdown-menu > li > a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: 400;
    line-height: 1.42857143;
    color: #333;
    white-space: nowrap;
    text-decoration: none;
}
.note-editor .dropdown-menu > li > a:hover,
.note-editor .dropdown-menu > li > a:focus,
.note-editor .note-dropdown-menu > li > a:hover,
.note-editor .note-dropdown-menu > li > a:focus {
    color: #262626;
    text-decoration: none;
    background-color: #f5f5f5;
}
.note-editor .dropdown-menu > .active > a,
.note-editor .dropdown-menu > .active > a:hover,
.note-editor .dropdown-menu > .active > a:focus,
.note-editor .note-dropdown-menu > .active > a,
.note-editor .note-dropdown-menu > .active > a:hover,
.note-editor .note-dropdown-menu > .active > a:focus {
    color: #fff;
    text-decoration: none;
    background-color: #337ab7;
    outline: 0;
}
.note-editor .caret {
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 4px;
    vertical-align: middle;
    border-top: 4px solid;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
}

/* ----- 浮动工具栏 popover 内按钮（挂载 body） ----- */
.note-popover .btn {
    display: inline-block;
    margin-bottom: 0;
    font-weight: 400;
    text-align: center;
    cursor: pointer;
    border: 1px solid #d3cfcf;
    white-space: nowrap;
    padding: 5px 8px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px;
    user-select: none;
    background-color: #fff;
    color: #555;
    text-decoration: none;
    box-sizing: border-box;
}
.note-popover .btn:hover,
.note-popover .btn:focus {
    color: #333;
    background-color: #f0f0f0;
    outline: 0;
}
.note-popover .note-btn-group,
.note-popover .btn-group {
    position: relative;
    display: inline-block;
    vertical-align: middle;
}
.note-popover .note-btn-group > .note-btn,
.note-popover .btn-group > .btn {
    position: relative;
    float: left;
    margin-left: -1px;
}
.note-popover .note-btn-group > .note-btn:first-child,
.note-popover .btn-group > .btn:first-child {
    margin-left: 0;
}
.note-popover .note-btn-group.open > .dropdown-menu,
.note-popover .note-btn-group.open > .note-dropdown-menu,
.note-popover .btn-group.open > .dropdown-menu {
    display: block;
}
.note-popover .dropdown-menu,
.note-popover .note-dropdown-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    min-width: 160px;
    margin: 2px 0 0;
    padding: 5px 0;
    list-style: none;
    font-size: 14px;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.15);
    border-radius: 4px;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175);
}
.note-popover .dropdown-menu > li > a,
.note-popover .note-dropdown-menu > li > a {
    display: block;
    padding: 3px 20px;
    color: #333;
    text-decoration: none;
    white-space: nowrap;
}
.note-popover .dropdown-menu > li > a:hover,
.note-popover .note-dropdown-menu > li > a:hover {
    background-color: #f5f5f5;
}

/* ----- 工具栏浮动 tooltip（bootstrap tooltip，container 默认为 .note-editor） ----- */
.note-editor .tooltip {
    position: absolute;
    z-index: 1070;
    display: block;
    font-size: 12px;
    line-height: 1.42857143;
    text-align: left;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
}
.note-editor .tooltip.in {
    opacity: 0.9;
}
.note-editor .tooltip.fade {
    opacity: 0;
    transition: opacity 0.15s linear;
}
.note-editor .tooltip.fade.in {
    opacity: 0.9;
}
.note-editor .tooltip.top {
    margin-top: -3px;
    padding: 5px 0;
}
.note-editor .tooltip.right {
    margin-left: 3px;
    padding: 0 5px;
}
.note-editor .tooltip.bottom {
    margin-top: 3px;
    padding: 5px 0;
}
.note-editor .tooltip.left {
    margin-left: -3px;
    padding: 0 5px;
}
.note-editor .tooltip-inner {
    max-width: 240px;
    padding: 4px 8px;
    color: #fff;
    text-align: center;
    background-color: rgba(0, 0, 0, 0.85);
    border-radius: 4px;
    white-space: pre-wrap;
    word-wrap: break-word;
}
.note-editor .tooltip-arrow {
    position: absolute;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
}
.note-editor .tooltip.top .tooltip-arrow {
    bottom: 0;
    left: 50%;
    margin-left: -5px;
    border-width: 5px 5px 0;
    border-top-color: rgba(0, 0, 0, 0.85);
}
.note-editor .tooltip.top-left .tooltip-arrow,
.note-editor .tooltip.top-right .tooltip-arrow {
    bottom: 0;
    margin-bottom: -5px;
    border-width: 5px 5px 0;
    border-top-color: rgba(0, 0, 0, 0.85);
}
.note-editor .tooltip.top-left .tooltip-arrow {
    right: 5px;
}
.note-editor .tooltip.top-right .tooltip-arrow {
    left: 5px;
}
.note-editor .tooltip.right .tooltip-arrow {
    top: 50%;
    left: 0;
    margin-top: -5px;
    border-width: 5px 5px 5px 0;
    border-right-color: rgba(0, 0, 0, 0.85);
}
.note-editor .tooltip.left .tooltip-arrow {
    top: 50%;
    right: 0;
    margin-top: -5px;
    border-width: 5px 0 5px 5px;
    border-left-color: rgba(0, 0, 0, 0.85);
}
.note-editor .tooltip.bottom .tooltip-arrow,
.note-editor .tooltip.bottom-left .tooltip-arrow,
.note-editor .tooltip.bottom-right .tooltip-arrow {
    top: 0;
    border-width: 0 5px 5px;
    border-bottom-color: rgba(0, 0, 0, 0.85);
}
.note-editor .tooltip.bottom .tooltip-arrow {
    left: 50%;
    margin-left: -5px;
}
.note-editor .tooltip.bottom-left .tooltip-arrow {
    right: 5px;
    margin-top: -5px;
}
.note-editor .tooltip.bottom-right .tooltip-arrow {
    left: 5px;
    margin-top: -5px;
}

/* ----- 编辑区内容 ----- */
.note-editor .note-editable {
    min-height: 120px;
    max-height: none !important;
    overflow-y: visible !important;
    padding: 10px 12px;
    color: #333;
    font-size: 14px;
    line-height: 1.6;
    background: #fff;
    box-sizing: border-box;
}
.note-editor .note-editable:focus {
    outline: none;
}
.note-editor .note-editable p,
.note-editor .note-editable hr {
    margin: 10px 0;
}
.note-editor .note-editable pre {
    line-height: 20px;
    padding: 10px;
    background: #f5f5f5;
    border-radius: 4px;
    overflow: auto;
}
.note-editor .note-editable img,
.note-editor .note-editable video {
    height: auto !important;
    max-width: 100% !important;
}
.note-editor .note-editable ul,
.note-editor .note-editable ol {
    padding-left: 2em;
    margin: 10px 0;
}
.note-editor .note-editable table {
    border-collapse: collapse;
    max-width: 100%;
}
.note-editor .note-editable table td,
.note-editor .note-editable table th {
    border: 1px solid #ddd;
    padding: 6px 8px;
}

/* ----- 编辑器 popover ----- */
.note-editor .note-popover.popover,
.note-popover.popover {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1060;
    display: none;
    max-width: none;
    padding: 1px;
    font-size: 14px;
    line-height: 1.42857143;
    text-align: left;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
}
.hide {
    display: none !important;
}
.note-editor .note-popover .popover-content,
.note-popover .popover-content {
    padding: 9px 14px;
}
.note-editor .note-popover .arrow,
.note-popover .arrow {
    position: absolute;
    display: block;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 11px;
}
.note-editor .note-popover.bottom,
.note-popover.bottom {
    margin-top: 10px;
}
.note-editor .note-popover.bottom > .arrow,
.note-popover.bottom > .arrow {
    top: -11px;
    left: 20px;
    border-top-width: 0;
    border-bottom-color: rgba(0, 0, 0, 0.25);
}
.note-editor .note-popover.bottom > .arrow:after,
.note-popover.bottom > .arrow:after {
    content: " ";
    position: absolute;
    top: 1px;
    margin-left: -10px;
    border-top-width: 0;
    border-bottom-color: #fff;
    border-width: 10px;
}

/* ----- 弹窗（挂载 body，限定 .note-modal） ----- */
.note-modal.modal {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 11050;
    display: none;
    overflow: hidden;
    outline: 0;
}
.note-modal.modal.in {
    display: block;
}
.note-modal .modal-dialog {
    position: relative;
    width: auto;
    margin: 80px 10px 10px;
    max-width: 600px;
    outline: 0;
    border-radius: 5px;
}
.note-modal .modal-content {
    position: relative;
    background-color: #fff;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
    outline: 0;
}
.note-modal .modal-header {
    padding: 15px;
    border-bottom: 1px solid #e5e5e5;
    border-radius: 6px 6px 0 0;
}
.note-modal .modal-header .close {
    float: right;
    margin-top: -2px;
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 21px;
    font-weight: 700;
    line-height: 1;
    color: #000;
    opacity: 0.4;
    cursor: pointer;
}
.note-modal .modal-header .close:hover {
    opacity: 0.7;
}
.note-modal .modal-title {
    margin: 0;
    line-height: 1.42857143;
    font-size: 16px;
    font-weight: 500;
}
.note-modal .modal-body {
    position: relative;
    padding: 15px;
}
.note-modal .modal-footer {
    padding: 15px;
    text-align: right;
    border-top: 1px solid #e5e5e5;
    border-radius: 0 0 6px 6px;
}
.note-modal .modal-footer .btn + .btn {
    margin-left: 5px;
}
.note-modal .form-group {
    margin-bottom: 15px;
    margin-left: 0;
    margin-right: 0;
}
.note-modal .form-control {
    display: block;
    width: 100%;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #333;
    background-color: #fff;
    border: 1px solid #d3cfcf;
    border-radius: 4px;
    box-sizing: border-box;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
}
.note-modal .form-control:focus {
    border-color: #93a1bb;
    outline: 0;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px rgba(147, 161, 187, 0.5);
}
.note-modal .checkbox {
    position: relative;
    display: block;
    margin-top: 10px;
    margin-bottom: 10px;
    padding-left: 20px;
}
.note-modal .checkbox label {
    min-height: 20px;
    margin-bottom: 0;
    font-weight: 400;
    cursor: pointer;
}
.note-modal .checkbox input[type=checkbox] {
    position: absolute;
    margin-left: -20px;
    margin-top: 4px;
}
.note-modal .btn {
    display: inline-block;
    margin-bottom: 0;
    font-weight: 400;
    text-align: center;
    cursor: pointer;
    border: 1px solid transparent;
    white-space: nowrap;
    padding: 6px 12px;
    font-size: 14px;
    line-height: 1.42857143;
    border-radius: 4px;
    user-select: none;
}
.note-modal .btn-default,
.note-modal .btn-light {
    color: #555;
    background-color: #fff;
    border-color: #d3cfcf;
}
.note-modal .btn-primary,
.note-modal .note-btn-primary {
    color: #fff;
    background-color: #337ab7;
    border-color: #2e6da4;
}

/* 弹窗遮罩（bootstrap 插入 body） */
body > .modal-backdrop {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 11040;
    background-color: #000;
}
body > .modal-backdrop.in {
    opacity: 0.5;
}
body > .modal-backdrop.fade {
    opacity: 0;
    transition: opacity 0.15s linear;
}

@media (min-width: 768px) {
    .note-modal .modal-dialog {
        width: 600px;
        margin: 80px auto 30px;
    }
}
