/* 富文本编辑器样式 */

/* Quill编辑器容器 */
.editor-container {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

/* 工具栏样式 */
.ql-toolbar {
    border: none;
    border-bottom: 1px solid #e0e0e0;
    background: #f8f9fa;
    padding: 12px;
}

.ql-toolbar .ql-formats {
    margin-right: 15px;
}

.ql-toolbar .ql-formats:last-child {
    margin-right: 0;
}

/* 编辑器内容区域 */
.ql-editor {
    min-height: 200px;
    font-size: 14px;
    line-height: 1.6;
    padding: 20px;
    border: none;
}

/* 公司简介编辑器较小高度 */
#company-desc-editor .ql-editor {
    min-height: 120px;
}

.ql-editor.ql-blank::before {
    color: #999;
    font-style: normal;
}

/* 工具栏按钮样式 */
.ql-toolbar button {
    border: none;
    background: none;
    padding: 6px 8px;
    margin: 0 2px;
    border-radius: 4px;
    transition: all 0.2s;
}

.ql-toolbar button:hover {
    background: #e9ecef;
}

.ql-toolbar button.ql-active {
    background: #667eea;
    color: #fff;
}

/* 下拉菜单样式 */
.ql-toolbar .ql-picker {
    color: #333;
}

.ql-toolbar .ql-picker-options {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

.ql-toolbar .ql-picker-item:hover {
    background: #f8f9fa;
}

/* 字体大小选择器 */
.ql-size .ql-picker-label::before,
.ql-size .ql-picker-item::before {
    content: '14px';
}
.ql-size .ql-picker-label[data-value="small"]::before,
.ql-size .ql-picker-item[data-value="small"]::before {
    content: '12px';
}
.ql-size .ql-picker-label[data-value="large"]::before,
.ql-size .ql-picker-item[data-value="large"]::before {
    content: '18px';
}
.ql-size .ql-picker-label[data-value="huge"]::before,
.ql-size .ql-picker-item[data-value="huge"]::before {
    content: '24px';
}

/* 字体选择器 */
.ql-font .ql-picker-label::before,
.ql-font .ql-picker-item::before {
    content: '默认字体';
}
.ql-font .ql-picker-label[data-value="serif"]::before,
.ql-font .ql-picker-item[data-value="serif"]::before {
    content: '宋体';
}
.ql-font .ql-picker-label[data-value="monospace"]::before,
.ql-font .ql-picker-item[data-value="monospace"]::before {
    content: '等宽字体';
}

/* 标题选择器 */
.ql-header .ql-picker-label::before,
.ql-header .ql-picker-item::before {
    content: '正文';
}
.ql-header .ql-picker-label[data-value="1"]::before,
.ql-header .ql-picker-item[data-value="1"]::before {
    content: '标题1';
}
.ql-header .ql-picker-label[data-value="2"]::before,
.ql-header .ql-picker-item[data-value="2"]::before {
    content: '标题2';
}
.ql-header .ql-picker-label[data-value="3"]::before,
.ql-header .ql-picker-item[data-value="3"]::before {
    content: '标题3';
}

/* 编辑器内容样式 */
.ql-editor h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

.ql-editor h2 {
    font-size: 1.5em;
    margin: 0.83em 0;
}

.ql-editor h3 {
    font-size: 1.17em;
    margin: 1em 0;
}

.ql-editor blockquote {
    border-left: 4px solid #667eea;
    padding-left: 16px;
    margin: 16px 0;
    color: #666;
    background: #f8f9fa;
    padding: 16px;
    border-radius: 4px;
}

.ql-editor code {
    background: #f1f3f4;
    padding: 2px 4px;
    border-radius: 3px;
    font-family: 'Courier New', monospace;
}

.ql-editor pre {
    background: #f8f9fa;
    padding: 16px;
    border-radius: 4px;
    overflow-x: auto;
    border: 1px solid #e0e0e0;
}

.ql-editor a {
    color: #667eea;
    text-decoration: none;
}

.ql-editor a:hover {
    text-decoration: underline;
}

/* 图片样式 */
.ql-editor img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
    margin: 8px 0;
}

/* 表格样式 */
.ql-editor table {
    border-collapse: collapse;
    width: 100%;
    margin: 16px 0;
}

.ql-editor table td,
.ql-editor table th {
    border: 1px solid #ddd;
    padding: 8px 12px;
    text-align: left;
}

.ql-editor table th {
    background: #f8f9fa;
    font-weight: 600;
}

/* 列表样式 */
.ql-editor ul,
.ql-editor ol {
    padding-left: 24px;
    margin: 12px 0;
}

.ql-editor li {
    margin: 4px 0;
}

/* 响应式 */
@media (max-width: 768px) {
    .ql-toolbar {
        padding: 8px;
    }
    
    .ql-toolbar .ql-formats {
        margin-right: 8px;
    }
    
    .ql-editor {
        padding: 15px;
        min-height: 150px;
    }
    
    /* 隐藏一些不常用的工具栏按钮 */
    .ql-toolbar .ql-code-block,
    .ql-toolbar .ql-blockquote,
    .ql-toolbar .ql-indent {
        display: none;
    }
}

/* 编辑器加载状态 */
.editor-loading {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 200px;
    background: #f8f9fa;
    border: 1px solid #ddd;
    border-radius: 8px;
    color: #666;
}

.editor-loading::before {
    content: '正在加载编辑器...';
}

/* 字数统计 */
.editor-stats {
    padding: 8px 12px;
    background: #f8f9fa;
    border-top: 1px solid #e0e0e0;
    font-size: 12px;
    color: #666;
    text-align: right;
}

/* 全屏模式 */
.editor-fullscreen {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 9999;
    background: #fff;
}

.editor-fullscreen .ql-editor {
    min-height: calc(100vh - 100px);
}

/* 工具提示 */
.ql-tooltip {
    background: #333;
    color: #fff;
    padding: 8px 12px;
    border-radius: 4px;
    font-size: 12px;
}

.ql-tooltip::before {
    border-bottom-color: #333;
}

/* 错误状态 */
.editor-error {
    border-color: #e74c3c;
}

.editor-error .ql-toolbar {
    background: #fdf2f2;
    border-bottom-color: #e74c3c;
}

/* 成功状态 */
.editor-success {
    border-color: #27ae60;
}

.editor-success .ql-toolbar {
    background: #f0f9f0;
    border-bottom-color: #27ae60;
}