/* 자체 WYSIWYG 에디터 (1.72.0) — 무채색 미니멀, 모바일 우선. */
.oxe{border:1px solid #d7dbe2;border-radius:10px;background:#fff;font-family:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;overflow:hidden}
.oxe *,.oxe *::before,.oxe *::after{box-sizing:border-box}
.oxe-src-hidden{display:none!important}

/* ── 툴바 ── */
.oxe-toolbar{position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:2px 6px;padding:7px 9px;border-bottom:1px solid #e8eaef;background:#fafbfc}
.oxe-group{display:inline-flex;align-items:center;gap:2px;padding-right:6px;margin-right:0;border-right:1px solid #e8eaef}
.oxe-group:last-child{border-right:0;padding-right:0}
.oxe-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:0;border-radius:7px;background:transparent;color:#3d4350;cursor:pointer;padding:0;transition:background .12s,color .12s}
.oxe-btn:hover{background:#eef0f4;color:#111}
.oxe-btn.is-active{background:#111;color:#fff}
.oxe-btn svg{display:block}
.oxe-glyph{font-size:15px;line-height:1;font-family:Georgia,"Times New Roman",serif}
.oxe-glyph-color{border-bottom:3px solid #e60000;padding-bottom:1px}
.oxe-glyph-mark{background:linear-gradient(transparent 55%,#ffe066 55%);padding:0 2px}
.oxe-select{height:32px;border:1px solid #dde0e6;border-radius:7px;background:#fff;color:#3d4350;font-size:12.5px;padding:0 4px;cursor:pointer;max-width:96px}
.oxe-select:focus{outline:none;border-color:#111}

/* ── 팝오버 (색상/링크/표) ── */
.oxe-pop{position:absolute;top:calc(100% - 4px);z-index:40;background:#fff;border:1px solid #d7dbe2;border-radius:10px;box-shadow:0 10px 28px rgba(17,20,30,.14);padding:10px;min-width:228px}
.oxe-swatches{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;margin-bottom:8px}
.oxe-swatch{width:26px;height:26px;border:1px solid rgba(0,0,0,.12);border-radius:6px;cursor:pointer;padding:0}
.oxe-swatch:hover{transform:scale(1.12);box-shadow:0 1px 4px rgba(0,0,0,.18)}
.oxe-pop-row{display:flex;align-items:center;gap:8px}
.oxe-pop-link{position:relative;border:0;background:none;color:#5b6472;font-size:12px;cursor:pointer;text-decoration:underline;padding:0}
.oxe-pop-link:hover{color:#111}
.oxe-colorinput{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}
.oxe-pop-input{flex:1 1 auto;min-width:0;height:32px;border:1px solid #dde0e6;border-radius:7px;padding:0 9px;font-size:13px}
.oxe-pop-input:focus{outline:none;border-color:#111}
.oxe-pop-btn{height:32px;padding:0 12px;border:0;border-radius:7px;background:#111;color:#fff;font-size:12.5px;font-weight:700;cursor:pointer}
.oxe-pop-btn:hover{background:#2a2f3a}
.oxe-tablegrid{display:grid;grid-template-columns:repeat(6,1fr);gap:3px;margin-bottom:6px}
.oxe-tablecell{width:22px;height:22px;border:1px solid #dde0e6;border-radius:4px;background:#fff;cursor:pointer;padding:0}
.oxe-tablecell.is-on{background:#111;border-color:#111}
.oxe-pop-hint{font-size:12px;color:#8b919b;text-align:center}

/* ── 입력 영역 ── */
.oxe-stage{position:relative;background:#fff}
.oxe-area{padding:16px 18px;min-height:320px;outline:none;font-size:15px;line-height:1.7;color:#1f2937;word-break:break-word;overflow-wrap:anywhere;overflow-y:auto;cursor:text}
.oxe-area:empty::before{content:attr(data-oxe-empty-hint);color:#aab0ba;pointer-events:none}
.oxe-area p{margin:0;padding:0;line-height:1.7}
.oxe-area p:empty::before{content:"\00a0"}
/* 이미지는 블록 — 옆에 글자가 붙지 않는다. 정렬 버튼(문단 text-align)은 마진으로 승계(1.85.0). */
.oxe-area img{max-width:100%;height:auto;display:block}
.oxe-area [style*="text-align: center"] img,.oxe-area [style*="text-align:center"] img{margin-left:auto;margin-right:auto}
.oxe-area [style*="text-align: right"] img,.oxe-area [style*="text-align:right"] img{margin-left:auto}
.oxe-area a{color:#1d4ed8;text-decoration:underline}
.oxe-area blockquote{margin:10px 0;padding:8px 14px;border-left:3px solid #d1d5db;color:#4b5563}
.oxe-area pre{margin:10px 0;padding:12px 14px;background:#f6f7f9;border:1px solid #e8eaef;border-radius:8px;font-family:Consolas,Menlo,monospace;font-size:13px;line-height:1.6;overflow-x:auto;white-space:pre-wrap}
.oxe-area h2{font-size:24px;margin:14px 0 6px;line-height:1.4}
.oxe-area h3{font-size:20px;margin:12px 0 5px;line-height:1.4}
.oxe-area h4{font-size:17px;margin:10px 0 4px;line-height:1.4}
.oxe-area ul,.oxe-area ol{margin:6px 0;padding-left:26px}
.oxe-area hr{border:0;border-top:1px solid #e5e7eb;margin:14px 0}
.oxe-area table{border-collapse:collapse;margin:10px 0;max-width:100%}
.oxe-area td,.oxe-area th{border:1px solid #d7dbe2;padding:7px 10px;min-width:36px;font-size:14px}
.oxe-source,.oxe-text{display:none;width:100%;border:0;outline:none;resize:none;padding:16px 18px;font-size:13.5px;line-height:1.65;color:#1f2937;background:#fff}
.oxe-source{font-family:Consolas,Menlo,"Courier New",monospace;background:#fbfbfd}
.oxe[data-oxe-mode="html"] .oxe-area,.oxe[data-oxe-mode="text"] .oxe-area{display:none}
.oxe[data-oxe-mode="html"] .oxe-source{display:block}
.oxe[data-oxe-mode="text"] .oxe-text{display:block}
.oxe.is-uploading .oxe-area{opacity:.55;pointer-events:none}

/* ── 하단 바 (탭 + 높이조절) ── */
.oxe-statusbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:5px 9px;border-top:1px solid #e8eaef;background:#fafbfc}
.oxe-tabs{display:inline-flex;gap:3px}
.oxe-tab{height:26px;padding:0 12px;border:1px solid transparent;border-radius:999px;background:transparent;color:#6b7280;font-size:12px;font-weight:700;cursor:pointer;letter-spacing:.02em}
.oxe-tab:hover{color:#111}
.oxe-tab.is-active{background:#111;color:#fff}
.oxe-grip{display:inline-flex;flex-direction:column;gap:2px;align-items:center;justify-content:center;width:44px;height:22px;border:0;background:transparent;cursor:ns-resize;padding:0}
.oxe-grip span{display:block;width:22px;height:2px;border-radius:2px;background:#cdd2da}
.oxe-grip:hover span{background:#8b919b}

/* ── 구(舊) 외부 이미지 버튼 행: 에디터 툴바에 이미지 버튼이 있으므로 숨긴다 ── */
.omnyxar-editor-tools-clean{display:none!important}

/* ── 모바일 ── */
@media (max-width:680px){
  .oxe-toolbar{gap:2px 4px;padding:6px}
  .oxe-group{padding-right:4px}
  .oxe-btn{width:34px;height:34px}
  .oxe-select{height:34px;max-width:86px}
  .oxe-area{padding:13px 14px;font-size:16px} /* 16px 미만이면 iOS가 강제 확대함 */
  .oxe-source,.oxe-text{font-size:14px;padding:13px 14px}
}
