/* ===== 사이드바 하위 탭 ===== */
.dashboard-sidebar nav {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    margin: 0 -6px;
    padding: 0 6px 12px;
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,.12) transparent;
}
.nav-group { position: relative; display: grid; }
.nav-group > .nav-item { padding-right: 46px; }
.nav-group-toggle {
    position: absolute;
    top: 8px;
    right: 6px;
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    border: 0;
    border-radius: 7px;
    background: transparent;
    color: #5d6762;
    cursor: pointer;
}
.nav-group-toggle:hover { background: rgba(255,255,255,.05); color: #dce2df; }
.nav-group-toggle svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; transition: transform .2s ease; }
.nav-group.is-collapsed .nav-group-toggle svg { transform: rotate(-90deg); }
.nav-group.is-active .nav-group-toggle { color: #b9c2bd; }
.nav-subnav {
    display: grid;
    gap: 1px;
    margin: 2px 0 8px 27px;
    padding-left: 12px;
    border-left: 1px solid rgba(255,255,255,.07);
}
.nav-subitem {
    position: relative;
    display: flex;
    min-height: 31px;
    align-items: center;
    border: 0;
    border-radius: 7px;
    padding: 6px 10px;
    background: transparent;
    color: #6f7974;
    cursor: pointer;
    font-size: 11.5px;
    font-weight: 600;
    text-align: left;
    transition: color .15s, background .15s;
}
.nav-subitem:hover { background: rgba(255,255,255,.035); color: #dce2df; }
.nav-subitem.active { background: rgba(15,125,87,.13); color: #fff; }
.nav-subitem.active::before {
    position: absolute;
    top: 8px;
    bottom: 8px;
    left: -13px;
    width: 2px;
    border-radius: 2px;
    background: var(--green-bright);
    content: "";
}
@media (min-width: 721px) and (max-width: 900px) {
    .dashboard-panel { grid-template-columns: 228px minmax(0, 1fr); }
    .dashboard-sidebar { width: 228px; }
    .dashboard-sidebar .nav-item { justify-content: flex-start; }
    .dashboard-sidebar .nav-label, .dashboard-sidebar .nav-item span { display: block; }
    .dashboard-sidebar .sidebar-logo { width: 160px; height: auto; object-fit: contain; }
}
@media (max-width: 720px) {
    .dashboard-sidebar nav { overflow-y: auto; }
    /* 드로어에서는 하위 탭과 줄을 맞추도록 상위 메뉴도 왼쪽 정렬한다(900px 아이콘 레일의 가운데 정렬 해제). */
    .dashboard-sidebar .nav-item { justify-content: flex-start; }
    .nav-subitem { min-height: 40px; font-size: 12.5px; }
    .nav-group-toggle { top: 9px; }
}
@media (prefers-reduced-motion: reduce) { .nav-group-toggle svg { transition: none; } }

/* ===== 공통 ===== */
.support-view [hidden], .support-panel [hidden], .support-editor [hidden] { display: none !important; }
.support-view .admin-tabs,
.member-tabs { margin-top: 6px; }
.support-panel > .summary-grid,
.member-list-panel > .summary-grid,
.withdrawal-stats > .summary-grid { margin-top: 18px; }
.support-panel .work-search-box input,
.withdrawal-stats .work-search-box input {
    width: 100%;
    height: 40px;
    box-sizing: border-box;
    border: 1px solid #34433e;
    border-radius: 8px;
    padding: 0 12px;
    background: #0c0f0d;
    color: #eff8f3;
    font-size: 12px;
}
.support-filters {
    display: grid;
    gap: 14px;
    padding: 18px 24px;
    border-bottom: 1px solid var(--line);
}
.support-search-box { max-width: 420px; }
.support-chip-rows { display: grid; gap: 10px; }
.support-list-body { min-height: 230px; }
.support-list .pagination { margin: 18px 0 20px; }
.support-state {
    display: grid;
    min-height: 230px;
    place-items: center;
    align-content: center;
    gap: 8px;
    padding: 32px 20px;
    color: #6f7974;
    text-align: center;
}
.support-state strong { color: #c9d1cd; font-size: 13px; }
.support-state p { max-width: 420px; margin: 0; font-size: 11px; line-height: 1.6; }
.support-state small { color: #5b645f; font-size: 9px; }
.support-state-mark { display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid var(--line); border-radius: 50%; color: #77817b; font-weight: 800; }
.support-state[data-state="error"] strong,
.support-state[data-state="error"] .support-state-mark { color: #ff9696; border-color: rgba(218,78,78,.35); }
.support-state .secondary-action { margin-top: 6px; }
.support-table-wrap table { min-width: 860px; }
.support-row:focus-visible { outline: 2px solid var(--green); outline-offset: -2px; background: rgba(15,125,87,.12); }
.support-row:hover { box-shadow: inset 3px 0 var(--green); }
.support-row.is-draft .support-title-cell strong { color: #aab2ae; }
.support-title-cell strong { display: block; max-width: 460px; overflow: hidden; color: #e8ecea; font-size: 12px; text-overflow: ellipsis; white-space: nowrap; }
.support-category-badge {
    display: inline-flex;
    align-items: center;
    border: 1px solid rgba(36,185,129,.22);
    border-radius: 20px;
    padding: 4px 9px;
    background: rgba(15,125,87,.08);
    color: #9fe3c6;
    font-size: 9.5px;
    font-weight: 700;
    white-space: nowrap;
}
.support-back-link {
    display: inline-flex;
    margin: 4px 0 16px;
    border: 0;
    padding: 6px 0;
    background: transparent;
    color: #8c9691;
    cursor: pointer;
    font-size: 12px;
    font-weight: 700;
}
.support-back-link:hover { color: var(--green-bright); }
.support-link-button { border: 0; padding: 4px 0; background: transparent; color: #69d9ae; cursor: pointer; font-size: 10.5px; font-weight: 700; }
.support-link-button:hover { text-decoration: underline; }
.support-mode-switch {
    display: inline-flex;
    gap: 2px;
    border: 1px solid var(--line);
    border-radius: 9px;
    padding: 3px;
    background: rgba(255,255,255,.02);
}
.support-mode-button {
    min-height: 32px;
    border: 0;
    border-radius: 7px;
    padding: 0 14px;
    background: transparent;
    color: #8c9691;
    cursor: pointer;
    font-size: 11.5px;
    font-weight: 700;
}
.support-mode-button[aria-pressed="true"] { background: rgba(15,125,87,.22); color: #fff; }
.support-banner {
    display: grid;
    gap: 4px;
    border: 1px solid rgba(36,185,129,.22);
    border-radius: 10px;
    padding: 12px 14px;
    background: rgba(15,125,87,.07);
    color: #aab2ae;
    font-size: 11px;
    line-height: 1.6;
}
.support-banner strong { color: #e8ecea; font-size: 12px; }
.support-banner.warning { border-color: rgba(224,164,67,.3); background: rgba(224,164,67,.08); }
.support-banner.warning strong { color: #f0c477; }
.support-banner.danger { border-color: rgba(218,78,78,.38); background: rgba(160,40,40,.12); }
.support-banner.danger strong { color: #ff9696; }
.support-banner-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
.danger-action.compact, .secondary-action.compact, .primary-action.compact { min-height: 38px; height: auto; padding: 0 13px; }

/* ===== 상세(블로그 글) ===== */
.support-detail {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 300px;
    align-items: start;
    gap: 24px;
}
.support-article {
    min-width: 0;
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: clamp(26px, 4vw, 52px) clamp(22px, 5vw, 64px) clamp(32px, 5vw, 60px);
    background:
        radial-gradient(circle at 0 0, rgba(15,125,87,.1), transparent 34%),
        #0f1210;
}
.support-article-header { max-width: 720px; margin: 0 auto 30px; padding-bottom: 24px; border-bottom: 1px solid var(--line); }
.support-article-badges { display: flex; flex-wrap: wrap; gap: 7px; }
.support-article-title {
    margin: 16px 0 12px;
    color: #f6f8f7;
    font-size: clamp(24px, 2.6vw, 32px);
    line-height: 1.35;
    letter-spacing: -.035em;
    overflow-wrap: anywhere;
}
.support-article-meta { display: flex; gap: 4px; margin: 0; color: #77817b; font-size: 12px; }
.support-article-body { max-width: 720px; margin: 0 auto; }
.support-article-kicker { display: inline-block; margin-bottom: 14px; color: #5bd3a1; font-size: 10px; font-weight: 800; letter-spacing: .17em; }
.support-article-meta-dot { margin: 0 5px; color: #4d5953; }
/* Pretendard에는 이탤릭 서체가 없고 관리자 공통 CSS가 합성을 끄므로, 본문에서는 기울임 합성을 허용한다. */
.support-article-rich, .support-rich-editor .sun-editor-editable { font-synthesis: style; }
.support-article-rich em, .support-article-rich i, .support-rich-editor .sun-editor-editable em, .support-rich-editor .sun-editor-editable i { font-style: italic; }
/* 편집기(15px·1.8·문단 아래 10px)와 같은 간격이라 빈 줄 수가 그대로 보인다. */
.support-article-rich { color: #d7dedb; font-size: 15px; line-height: 1.8; overflow-wrap: anywhere; }
.support-article-rich p, .support-article-rich div { margin: 0 0 10px; }
.support-article-rich h2, .support-article-rich h3, .support-article-rich h4 { margin: 1.7em 0 .65em; color: #f2f6f4; line-height: 1.4; }
.support-article-rich h2 { font-size: 23px; }
.support-article-rich h3 { font-size: 19px; }
.support-article-rich h4 { font-size: 16px; }
.support-article-rich blockquote { margin: 1.7em 0; padding: 6px 0 6px 20px; border-left: 3px solid #28b982; color: #aebdb5; }
.support-article-rich ul, .support-article-rich ol { margin: 1em 0 1.4em; padding-left: 25px; }
.support-article-rich li { margin: .3em 0; }
.support-article-rich a { color: #68d9aa; text-decoration: underline; text-underline-offset: 3px; }
.support-article-rich hr { margin: 2em 0; border: 0; border-top: 1px solid var(--line); }
.support-side-title { margin: 9px 0 4px; color: #f4f7f5; font-size: 17px; }
.support-side-description { margin: 0 0 18px; color: #828f87; font-size: 11px; line-height: 1.6; }
.support-article-text {
    margin: 0 0 1.25em;
    color: #d7dedb;
    font-size: 15px;
    line-height: 1.85;
    letter-spacing: -.005em;
    white-space: pre-line;
    overflow-wrap: anywhere;
}
/* 본문 이미지: 기본은 원본 크기(본문 폭 이내) 가운데, 폭(%)·정렬은 블록 값에 따른다.
   정렬은 이미지 위치만 바꾸고 글은 항상 이미지 아래로 이어진다(글이 이미지 옆으로 흐르지 않음). */
.support-article-figure { width: fit-content; max-width: 100%; margin: 20px auto; }
.support-article-figure.has-width { width: auto; }
.support-article-figure[data-align="center"] { margin-left: auto; margin-right: auto; }
.support-article-figure[data-align="left"] { margin-left: 0; margin-right: auto; }
.support-article-figure[data-align="right"] { margin-left: auto; margin-right: 0; }
.support-figure-button {
    display: block;
    width: 100%;
    border: 0;
    border-radius: 0;
    padding: 0;
    background: transparent;
    cursor: zoom-in;
}
.support-article-figure .support-image { border-radius: 0; }
.support-article-missing {
    display: grid;
    gap: 4px;
    margin: 24px 0;
    border: 1px dashed rgba(224,164,67,.36);
    border-radius: 12px;
    padding: 14px 16px;
    color: #a9a088;
    font-size: 11px;
    line-height: 1.6;
}
.support-article-missing strong { color: #f0c477; font-size: 12px; }
.support-article-empty { color: #6f7974; font-size: 13px; text-align: center; }
.support-image {
    position: relative;
    display: grid;
    min-height: 180px;
    place-items: center;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: repeating-linear-gradient(135deg, rgba(255,255,255,.02) 0 10px, transparent 10px 20px), #0c0f0d;
}
.support-image[data-state="ready"] { min-height: 0; border-color: transparent; background: transparent; }
.support-image img { display: block; width: 100%; height: auto; }
.support-article-figure:not(.has-width) .support-image img { width: auto; max-width: 100%; }
.support-image-placeholder { color: #66706b; font-size: 11px; }
.support-image.is-broken { border-style: dashed; border-color: rgba(224,164,67,.4); }
.support-image.is-broken .support-image-placeholder { color: #f0c477; }
.support-image-uploading { gap: 8px; align-content: center; }
.support-detail-aside { position: sticky; top: 24px; }
.support-side-card {
    display: grid;
    gap: 16px;
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 20px;
    background: rgba(255,255,255,.02);
}
.support-facts { display: grid; gap: 1px; margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: var(--line); }
.support-facts > div { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 12px; background: #111412; }
.support-facts dt { color: #87908b; font-size: 10.5px; }
.support-facts dd { margin: 0; color: #e8ecea; font-size: 11px; font-weight: 600; text-align: right; }
.support-facts code { color: #9fe3c6; font-family: ui-monospace, monospace; }
.support-side-actions { display: grid; gap: 8px; }
.support-side-actions button { width: 100%; }
.support-side-note { margin: 0; color: #6f7974; font-size: 10.5px; line-height: 1.6; }
.danger-action:disabled { cursor: wait; opacity: .55; }

/* 원본 이미지 보기 */
.support-image-viewer {
    width: min(1100px, calc(100vw - 32px));
    max-height: calc(100dvh - 32px);
    border: 1px solid var(--line);
    border-radius: 14px;
    padding: 46px 16px 16px;
    background: #0b0d0c;
    color: #fff;
}
.support-image-viewer::backdrop { background: rgba(0,0,0,.78); backdrop-filter: blur(4px); }
.support-viewer-close { position: absolute; top: 10px; right: 12px; border: 1px solid var(--line); border-radius: 8px; padding: 6px 12px; background: rgba(255,255,255,.04); color: #dce2df; cursor: pointer; font-size: 11px; }
.support-viewer-stage .support-image { min-height: 240px; }
.support-viewer-stage img { max-height: calc(100dvh - 120px); object-fit: contain; }

/* ===== 편집기 ===== */
.support-editor { display: grid; gap: 18px; }
.support-editor-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; }
.support-banners { display: grid; gap: 10px; }
.support-banners:empty { display: none; }
.support-editor-meta {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 14px;
    border: 1px solid var(--line);
    border-radius: 13px;
    padding: 18px;
    background: rgba(255,255,255,.018);
}
.support-field { display: grid; gap: 7px; min-width: 0; }
.support-field > span, .support-field-label { color: #dce2df; font-size: 11px; font-weight: 700; }
.support-field-label { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.support-field input,
.support-field select {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
    border: 1px solid #2c3631;
    border-radius: 8px;
    background: #0c0f0d;
    color: #f4f7f5;
    font-size: 13px;
    outline: 0;
}
.support-field input, .support-field select { height: 42px; padding: 0 12px; }
.support-field input:focus, .support-field select:focus { border-color: var(--green-bright); box-shadow: 0 0 0 3px rgba(15,125,87,.14); }
.support-field [aria-invalid="true"] { border-color: #d65a5a; }
.support-field-error { margin: 0; color: #ff9696; font-size: 10.5px; }
.support-counter { color: #66706b; font-size: 10px; font-weight: 600; font-variant-numeric: tabular-nums; }
.support-counter.over, .support-counter-line.over { color: #ff9696; }
.support-help { color: #66706b; font-size: 10px; line-height: 1.5; }
.support-editor-body {
    display: grid;
    gap: 14px;
    border: 1px solid var(--line);
    border-radius: 13px;
    padding: 18px;
    background: rgba(255,255,255,.018);
}
.support-editor-body-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; }
.support-editor-body-head h3 { margin: 0 0 4px; font-size: 14px; }
.support-editor-body-head p { margin: 0; color: #66706b; font-size: 11px; }
.support-counter-line { margin: 0; color: #87908b; font-size: 11px; font-weight: 700; font-variant-numeric: tabular-nums; white-space: nowrap; }
.support-editor-body.is-file-hover { outline: 2px dashed #32c58d; outline-offset: -8px; background: rgba(34,185,126,.08); }
.support-dropped-note { margin: 0; border-color: rgba(224,164,67,.3); background: rgba(224,164,67,.08); }
.support-dropped-note strong { color: #f0c477; }
/* 본문 편집기(SunEditor 하나). 이미지는 본문 안에 인라인으로 들어간다. */
.support-rich-editor { min-width: 0; }
.support-rich-editor .sun-editor { width: 100%; border: 1px solid #34433e; border-radius: 10px; overflow: visible; background: #141b17; }
.support-rich-editor .sun-editor .se-toolbar { border-radius: 10px 10px 0 0; }
.support-rich-editor .sun-editor .se-wrapper { border-radius: 0; }
/* 아래쪽 드래그 바로 편집기 높이를 조절한다. 본문은 그 안에서 스크롤된다. */
.support-rich-editor .sun-editor .se-resizing-bar { position: relative; min-height: 18px; border-top: 1px solid #34433e; border-radius: 0 0 10px 10px; padding: 0; background: #1c2922; cursor: ns-resize; }
.support-rich-editor .sun-editor .se-resizing-bar::before { content: ""; position: absolute; top: 50%; left: 50%; width: 48px; height: 4px; margin: -2px 0 0 -24px; border-radius: 2px; background: #4a5a52; transition: background .15s; }
.support-rich-editor .sun-editor .se-resizing-bar:hover::before { background: #28b982; }
.support-rich-editor .sun-editor .se-resizing-bar .se-navigation { display: none; }
/* 이미지 끌어 옮기기: 끄는 동안 반투명, 놓일 자리는 가이드 선으로 표시 */
.support-rich-editor .sun-editor-editable .se-component { cursor: grab; }
.support-rich-editor .sun-editor-editable .se-component.is-dragging { opacity: .45; cursor: grabbing; }
.support-rich-editor .sun-editor-editable.is-reordering { cursor: grabbing; user-select: none; }
.support-rich-editor .sun-editor-editable.is-reordering * { cursor: grabbing !important; }
.support-rich-editor .support-drop-indicator { position: absolute; left: 24px; right: 24px; z-index: 8; height: 3px; margin-top: -1px; border-radius: 2px; background: #28b982; box-shadow: 0 0 0 3px rgba(40,185,130,.22); pointer-events: none; }
.support-rich-editor .support-drop-indicator::before { content: ""; position: absolute; left: -6px; top: -4px; width: 11px; height: 11px; border-radius: 50%; background: #28b982; }
.support-rich-editor .sun-editor .se-toolbar { position: sticky; top: 0; z-index: 7; background: #1c2922; outline: 0; }
.support-rich-editor .sun-editor .se-btn-module-border,
.support-rich-editor .sun-editor .se-btn-module { border-color: #3a4b41; }
.support-rich-editor .sun-editor .se-btn-tray { background: #1c2922; }
.support-rich-editor .sun-editor .se-btn-select { color: #e5eee8; }
.support-rich-editor .sun-editor .se-btn { color: #dde9e1; }
.support-rich-editor .sun-editor .se-btn:enabled:hover, .support-rich-editor .sun-editor .se-btn:enabled:focus { background: rgba(41,190,133,.18); border-color: transparent; color: #fff; }
.support-rich-editor .sun-editor .se-btn:enabled.active { color: #68d9aa; }
.support-rich-editor .sun-editor .se-btn:enabled.active:hover, .support-rich-editor .sun-editor .se-btn:enabled.active:focus { background: rgba(41,190,133,.26); border-color: transparent; }
.support-rich-editor .sun-editor .se-wrapper, .support-rich-editor .sun-editor .se-resizing-bar { background: #141b17; color: #e5eee8; }
.support-rich-editor .sun-editor .sun-editor-editable { padding: 20px 24px; color: #e5eee8; background: #141b17; font-size: 15px; line-height: 1.8; }
.support-rich-editor .sun-editor .sun-editor-editable[contenteditable=true]:focus { outline: 0; }
.support-rich-editor .sun-editor .se-wrapper .se-placeholder { padding: 20px 24px; color: #5e6964; font-size: 15px; line-height: 1.8; }
.support-rich-editor .sun-editor-editable h2, .support-rich-editor .sun-editor-editable h3, .support-rich-editor .sun-editor-editable h4 { color: #f2f6f4; }
.support-rich-editor .sun-editor-editable a { color: #68d9aa; }
.support-rich-editor .sun-editor-editable blockquote { border-color: #28b982; color: #aebdb5; }
.support-rich-editor .sun-editor-editable hr { border-color: #34433e; }
/* 이미지 정렬은 위치만 바꾼다. float를 쓰지 않아 글이 이미지 옆에 붙지 않고 항상 아래로 이어진다. */
.support-rich-editor .sun-editor-editable .se-component { float: none !important; clear: both; margin: 10px 0 14px; }
.support-rich-editor .sun-editor-editable .se-component.__se__float-none,
.support-rich-editor .sun-editor-editable .se-component.__se__float-center { margin-left: auto; margin-right: auto; justify-content: center; }
.support-rich-editor .sun-editor-editable .se-component.__se__float-left { margin-left: 0; margin-right: auto; justify-content: flex-start; }
.support-rich-editor .sun-editor-editable .se-component.__se__float-right { margin-left: auto; margin-right: 0; justify-content: flex-end; }
.support-rich-editor .sun-editor-editable figure { margin: 0; }
.support-rich-editor .sun-editor-editable img { display: block; max-width: 100%; height: auto; border-radius: 0; }
.support-rich-editor .sun-editor-editable .se-component.is-invalid { outline: 3px solid #d65a5a; outline-offset: 4px; border-radius: 10px; }
/* 편집기 대화상자(이미지·링크)·컨트롤러·목록 레이어를 관리자 다크 톤에 맞춘다. 기본 CSS 특이성이 높아 선택자를 같은 깊이로 둔다. */
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-content { border-color: #34433e; background: #141b17; color: #e5eee8; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-header { border-bottom-color: #2c3631; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-header .se-modal-title { color: #f2f6f4; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-header .close { color: #aab2ae; }
.support-rich-editor .sun-editor .se-dialog label { color: #dce2df; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form .se-input-form,
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form .se-input-select,
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form input[type="text"],
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form input[type="number"] {
    border: 1px solid #2c3631; border-radius: 6px; background: #0c0f0d; color: #f4f7f5;
}
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form .se-dialog-form-files .se-dialog-files-edge-button { border-color: #2c3631; background: #1c2922; color: #dde9e1; opacity: 1; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-footer { border-top-color: #2c3631; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-content .se-btn-primary { border-color: #28b982; background: #0f7d57; color: #fff; }
/* 이미지 대화상자: 이미지 링크 탭·설명(figcaption)은 저장 계약에 없어 숨긴다. */
.support-rich-editor .sun-editor .se-dialog-image .se-dialog-tabs,
.support-rich-editor .sun-editor .se-dialog-image .se-dialog-form-footer { display: none; }
/* 컨트롤러·목록 레이어는 편집기 바깥에 붙을 수 있어 화면 단위로 잡는다. */
.support-panel .support-editor .se-controller { border-color: #34433e; background: #1c2922; color: #e5eee8; }
/* 리사이즈 컨테이너도 .se-controller 클래스를 가지므로 배경을 다시 투명하게 둔다(사진이 가려지지 않게). */
.support-panel .support-editor .se-controller.se-resizing-container { background: transparent; border: 0; }
/* 컨트롤러 막대와 그 드롭다운(정렬)은 하단 고정 바보다 위에, 선택 테두리는 아래에 둔다. */
.support-panel .support-editor .se-controller-resizing { z-index: 10; }
.support-panel .support-editor .se-resizing-container { z-index: 6; }
.support-panel .support-editor .se-controller .se-btn-group button { color: #dde9e1; }
.support-panel .support-editor .se-controller .se-btn-group button:hover:enabled, .support-panel .support-editor .se-controller .se-btn-group button:focus:enabled,
.support-panel .support-editor .se-controller .se-btn-group button:enabled.on { background: rgba(41,190,133,.18); border-color: transparent; color: #fff; }
.support-panel .support-editor .se-controller .se-btn-group button:enabled.active { color: #68d9aa; }
.support-panel .support-editor .se-list-layer { border-color: #34433e; background: #1c2922; color: #e5eee8; }
.support-panel .support-editor .se-list-layer .se-btn-list { color: #e5eee8; }
.support-panel .support-editor .se-list-layer .se-btn-list.default_value { background: #141b17; border-color: #34433e; }
.support-panel .support-editor .se-list-layer.se-list-format ul h2, .support-panel .support-editor .se-list-layer.se-list-format ul h3,
.support-panel .support-editor .se-list-layer.se-list-format ul h4, .support-panel .support-editor .se-list-layer.se-list-format ul p { color: #e5eee8; }
.support-panel .support-editor .se-list-layer .se-btn-list:hover, .support-panel .support-editor .se-list-layer .se-btn-list:focus { background: rgba(41,190,133,.18); border-color: transparent; }
.support-panel .support-editor .se-list-layer .se-list-inner .se-list-basic li button.active { background: rgba(41,190,133,.26); border-color: transparent; }
/* 이미지를 선택했을 때 파란 반투명 덮개 대신 테두리만 보여 사진이 그대로 보이게 한다. */
.support-panel .support-editor .se-resizing-container { outline: 2px solid #28b982; outline-offset: 2px; border-radius: 10px; }
/* 드래그 중에는 이 사각형이 새 크기로 따라 움직인다. 채우기 대신 점선 테두리로 보여 사진이 가려지지 않는다. */
.support-panel .support-editor .se-resizing-container .se-modal-resize { opacity: 1; background: rgba(40,185,130,.08); outline: 2px dashed #28b982; outline-offset: -2px; }
.support-panel .support-editor .se-resizing-container .se-resize-dot > span { background: #28b982; border-color: #68d9aa; }
.support-rich-editor .sun-editor .se-btn:enabled.on { background: rgba(41,190,133,.26); border-color: transparent; color: #fff; }
.support-rich-editor .sun-editor .se-btn:enabled:active { background: rgba(41,190,133,.3); border-color: transparent; box-shadow: none; }
.support-rich-editor .sun-editor .se-loading-box { background: rgba(10,13,11,.6); }
.support-rich-editor .sun-editor-editable[contenteditable=true] .se-component { outline: none; }
.support-add-bar { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding-top: 4px; }
.support-add-bar small { color: #5b645f; font-size: 10px; }
.support-blocks-error { padding: 10px 12px; border-radius: 8px; background: rgba(160,40,40,.12); }
.support-preview { margin: 0; }
/* ===== 사용자 상세 미리보기(PC 게시판 / Mobile 앱) ===== */
.support-preview-bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin: 0 0 14px; }
.support-preview-bar .support-preview-note { margin: 0; text-align: left; }
.support-preview-note { color: #8a948f; font-size: 12px; }
.support-preview-head { display: flex; align-items: center; gap: 10px; margin: 0 0 12px; }
.support-preview-badge { display: inline-flex; align-items: center; border: 1px solid rgba(39,193,138,.45); border-radius: 6px; padding: 3px 9px; background: rgba(39,193,138,.14); color: #8fe6c0; font-size: 12px; font-weight: 800; line-height: 1.3; }
.support-preview-date { color: #8a948f; font-size: 13px; font-variant-numeric: tabular-nums; }
.support-preview-title { margin: 0 0 18px; color: #fff; font-size: 22px; font-weight: 800; line-height: 1.4; letter-spacing: -.02em; overflow-wrap: anywhere; }
.support-preview-divider { margin: 0 0 24px; border: 0; border-top: 1px solid #27302b; }
.support-preview-body.support-article-body { max-width: none; margin: 0; }
.support-preview-body .support-article-rich, .support-preview-body .support-article-text { color: #d7dedb; font-size: 14.5px; line-height: 1.75; }
.support-preview-body .support-article-rich p { margin: 0 0 8px; }
.support-preview-body .support-article-figure { margin: 18px auto; }
.support-preview-foot { margin-top: 40px; padding-top: 20px; border-top: 1px solid #1f2622; }
.support-preview-cta { display: flex; align-items: center; justify-content: center; height: 52px; border-radius: 12px; background: #2ee08f; color: #0b1a13; font-size: 16px; font-weight: 800; }
/* PC 게시판 */
.support-board { max-width: 960px; margin: 0 auto; border: 1px solid #1f2622; border-radius: 12px; padding: 28px 32px 32px; background: #0d100e; }
/* Mobile 앱 폰 프레임(앱 상세 화면과 같은 구성) */
.support-preview-stage { display: flex; justify-content: center; padding: 6px 0 4px; }
.support-phone {
    display: flex;
    flex-direction: column;
    width: min(390px, 100%);
    min-height: 780px;
    max-height: 860px;
    overflow: hidden;
    border: 1px solid #2c3631;
    border-radius: 34px;
    background: #0b0b0b;
    color: #e6e6e6;
    box-shadow: 0 30px 80px rgba(0,0,0,.55), inset 0 0 0 1px rgba(255,255,255,.03);
}
.support-phone-status { display: flex; align-items: center; justify-content: space-between; height: 44px; padding: 0 26px 0 30px; color: #fff; font-size: 15px; font-weight: 700; }
.support-phone-notch { width: 118px; height: 30px; border-radius: 18px; background: #1a1a1a; }
.support-phone-signal { color: #fff; font-size: 11px; letter-spacing: 1px; }
.support-phone-appbar { display: flex; align-items: center; gap: 18px; height: 52px; padding: 0 18px; border-bottom: 1px solid #1a1a1a; }
.support-phone-back { color: #fff; font-size: 30px; line-height: 1; }
.support-phone-appbar-title { color: #fff; font-size: 16px; font-weight: 700; }
.support-phone .support-phone-screen { flex: 1 1 auto; min-height: 0; overflow-y: auto; padding: 18px 16px 28px; scrollbar-width: thin; }
.support-phone .support-preview-head { gap: 8px; margin-bottom: 8px; }
.support-phone .support-preview-badge { border: 0; border-radius: 4px; padding: 3px 7px; background: #2b2b2b; color: #d9d9d9; font-size: 11px; font-weight: 700; }
.support-phone .support-preview-badge[data-resource="notices"] { background: #e8842e; color: #1a1006; }
.support-phone .support-preview-date { color: #8d8d8d; font-size: 12px; }
.support-phone .support-preview-title { margin-bottom: 14px; color: #f4f4f4; font-size: 16px; font-weight: 700; line-height: 1.45; letter-spacing: -.01em; }
.support-phone .support-preview-divider { margin: 0 -16px 18px; border-top: 1px solid #1f1f1f; }
.support-phone .support-preview-body .support-article-rich, .support-phone .support-preview-body .support-article-text { color: #d9d9d9; font-size: 13px; line-height: 1.7; }
.support-phone .support-preview-body .support-article-rich p { margin: 0 0 6px; }
.support-phone .support-preview-body .support-article-rich h2 { font-size: 16px; }
.support-phone .support-preview-body .support-article-rich h3 { font-size: 15px; }
.support-phone .support-preview-body .support-article-rich h4 { font-size: 14px; }
.support-phone .support-preview-body .support-article-figure { margin: 0 0 16px; }
.support-phone .support-preview-body .support-article-figure:not(.has-width) { width: 100%; }
.support-phone .support-preview-body .support-article-figure:not(.has-width) .support-image img { width: 100%; }
.support-phone .support-preview-foot { flex: 0 0 auto; margin: 0; padding: 12px 16px 24px; border-top: 0; background: #0b0b0b; }
.support-phone .support-preview-cta { height: 50px; border-radius: 12px; background: #2ee08f; color: #0b1a13; font-size: 15px; }
/* 미리보기(PC·Mobile)의 사진 모서리는 사용자 앱과 같게 둥글린다. 관리자 상세 조회는 원본 그대로 각지다. */
.support-preview .support-article-figure .support-image, .support-preview .support-figure-button { border-radius: 10px; overflow: hidden; }
/* ===== 상세·작성·수정은 그 화면만 보인다 ===== */
.support-view.is-subscreen > .dashboard-topbar, .support-view.is-subscreen > .support-tabs { display: none; }
.support-subheader { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: 14px; margin: 4px 0 18px; padding-bottom: 16px; border-bottom: 1px solid var(--line); }
.support-subheader-copy { display: grid; gap: 8px; min-width: 0; }
.support-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; color: #8a948f; font-size: 12px; font-weight: 700; }
.support-crumb { color: #8a948f; }
.support-crumb-link { border: 0; padding: 0; background: transparent; color: #9fe3c6; cursor: pointer; font: inherit; }
.support-crumb-link:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.support-crumb.is-current { color: #e8ecea; }
.support-crumb-sep { color: #4d5953; }
.support-subheader-title { margin: 0; max-width: 820px; overflow: hidden; color: #fff; font-size: 24px; letter-spacing: -.03em; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.support-subheader-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.support-editor-head { justify-content: flex-end; }
.support-editor-footer {
    position: sticky;
    z-index: 9;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    margin: 0 -2px;
    border: 1px solid var(--line);
    border-radius: 12px;
    padding: 12px 14px;
    background: rgba(14,17,15,.94);
    backdrop-filter: blur(12px);
}
.support-save-status { margin-right: auto; color: #87908b; font-size: 11px; }

/* ===== 1:1 문의 ===== */
.support-requester strong, .support-requester span { display: block; max-width: 220px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.support-requester strong { color: #e8ecea; font-size: 11.5px; }
.support-requester span { margin-top: 3px; color: #77817b; font-size: 10px; }
.is-withdrawn { color: #8c9691 !important; font-style: italic; }
.support-row.is-pending td:first-child { box-shadow: inset 3px 0 rgba(240,196,119,.55); }
.support-dialog {
    width: min(760px, calc(100vw - 32px));
    max-height: calc(100dvh - 32px);
    border: 1px solid rgba(36,185,129,.22);
    border-radius: 16px;
    padding: 0;
    background: #101311;
    color: #fff;
    box-shadow: 0 30px 90px rgba(0,0,0,.6);
}
.support-dialog::backdrop { background: rgba(0,0,0,.66); backdrop-filter: blur(3px); }
.support-dialog-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 24px 26px 16px; border-bottom: 1px solid var(--line); }
.support-dialog-head h2 { margin: 8px 0 0; font-size: 20px; line-height: 1.4; letter-spacing: -.03em; overflow-wrap: anywhere; }
.support-dialog-close { flex: 0 0 auto; width: 40px; height: 40px; border: 1px solid var(--line); border-radius: 10px; background: transparent; color: #aab2ae; cursor: pointer; font-size: 20px; }
.support-dialog-body { display: grid; gap: 16px; padding: 18px 26px; }
.support-dialog-message { margin: 0 26px; border-radius: 9px; padding: 10px 12px; background: rgba(255,255,255,.04); color: #c9d1cd; font-size: 11.5px; }
.support-dialog-message[data-tone="success"] { background: rgba(15,125,87,.15); color: #9fe3c6; }
.support-dialog-message[data-tone="error"] { background: rgba(160,40,40,.15); color: #ff9696; }
.support-dialog-foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 26px 22px; }
.inquiry-strip { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.inquiry-received { margin-left: auto; color: #77817b; font-size: 11px; }
.inquiry-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1px; margin: 0; overflow: hidden; border: 1px solid var(--line); border-radius: 10px; background: var(--line); }
.inquiry-facts code { color: #9fe3c6; font-family: ui-monospace, monospace; font-size: 10px; }
.inquiry-mail { color: #69d9ae; text-decoration: none; }
.inquiry-mail:hover { text-decoration: underline; }
.inquiry-body-block h3 { margin: 0 0 8px; color: #87908b; font-size: 11px; letter-spacing: .04em; }
.inquiry-body {
    max-height: 320px;
    overflow-y: auto;
    border: 1px solid var(--line);
    border-radius: 10px;
    padding: 16px;
    background: #0c0f0d;
    color: #e3e8e5;
    font-size: 13px;
    line-height: 1.8;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}
.inquiry-status-wrap { display: flex; align-items: center; gap: 10px; }
.inquiry-status-label { color: #87908b; font-size: 11px; font-weight: 700; }
.inquiry-status-switch { display: inline-flex; gap: 3px; border: 1px solid var(--line); border-radius: 10px; padding: 3px; background: #0c0f0d; }
.inquiry-status-option { min-height: 38px; border: 0; border-radius: 8px; padding: 0 16px; background: transparent; color: #8c9691; cursor: pointer; font-size: 12px; font-weight: 700; }
.inquiry-status-option[aria-pressed="true"][data-status="PENDING"] { background: rgba(224,164,67,.16); color: #f0c477; }
.inquiry-status-option[aria-pressed="true"][data-status="RESOLVED"] { background: rgba(15,125,87,.24); color: #69d9ae; }
.inquiry-status-option:disabled { cursor: wait; opacity: .5; }

/* ===== 탈퇴 회원 통계 ===== */
.withdrawal-stats { display: grid; gap: 0; }
.withdrawal-period {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 12px 18px;
    margin-top: 10px;
    border: 1px solid var(--line);
    border-radius: 13px;
    padding: 16px 18px;
    background: rgba(255,255,255,.018);
}
.withdrawal-range { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 8px; }
.withdrawal-range .support-field input { width: 160px; color-scheme: dark; }
.withdrawal-range-dash { padding-bottom: 12px; color: #5b645f; }
.withdrawal-applied { flex-basis: 100%; margin: 0; color: #87908b; font-size: 11px; }
.withdrawal-period .support-field-error { flex-basis: 100%; }
.withdrawal-chart { margin-bottom: 22px; }
.withdrawal-chart-body { padding: 22px 24px 26px; }
.withdrawal-chart-body > .support-state { min-height: 0; padding: 0 0 18px; }
.withdrawal-donut-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); align-items: center; gap: 32px; }
.withdrawal-donut { position: relative; width: 240px; margin: 0; }
.withdrawal-donut svg { display: block; width: 100%; height: auto; transform: rotate(-90deg); }
.withdrawal-donut-track { fill: none; stroke: rgba(255,255,255,.06); stroke-width: 28; }
.withdrawal-donut-segment { fill: none; stroke-width: 28; cursor: pointer; transition: opacity .15s, stroke-width .15s; }
.withdrawal-donut-segment:hover { stroke-width: 32; }
.withdrawal-donut-segment.is-dimmed, .withdrawal-donut-segment.is-hover-dim { opacity: .22; }
.withdrawal-donut-center { position: absolute; inset: 0; display: grid; place-content: center; text-align: center; pointer-events: none; }
.withdrawal-donut-center strong { color: #fff; font-size: 34px; letter-spacing: -.04em; font-variant-numeric: tabular-nums; }
.withdrawal-donut-center span { color: #87908b; font-size: 11px; }
.withdrawal-tooltip {
    position: absolute;
    z-index: 3;
    display: grid;
    gap: 2px;
    border: 1px solid var(--line);
    border-radius: 8px;
    padding: 8px 10px;
    background: #171b19;
    box-shadow: 0 10px 26px rgba(0,0,0,.4);
    color: #c9d1cd;
    font-size: 11px;
    pointer-events: none;
    white-space: nowrap;
}
.withdrawal-tooltip strong { color: #fff; font-size: 12px; }
.withdrawal-legend { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }
.withdrawal-legend-button {
    display: grid;
    width: 100%;
    grid-template-columns: 12px minmax(0, 1fr) auto 64px;
    grid-template-areas: "swatch label count share" ". bar bar bar";
    align-items: center;
    gap: 6px 12px;
    border: 1px solid transparent;
    border-radius: 9px;
    padding: 9px 12px;
    background: transparent;
    color: #dce2df;
    cursor: pointer;
    text-align: left;
}
.withdrawal-legend-button:hover:not(:disabled) { border-color: var(--line); background: rgba(255,255,255,.03); }
.withdrawal-legend-button[aria-pressed="true"] { border-color: rgba(36,185,129,.4); background: rgba(15,125,87,.1); }
.withdrawal-legend-button:disabled { cursor: default; }
.withdrawal-swatch { grid-area: swatch; width: 10px; height: 10px; border-radius: 3px; }
.withdrawal-legend-label { grid-area: label; overflow: hidden; font-size: 12px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.withdrawal-legend-count { grid-area: count; color: #e8ecea; font-size: 12px; font-weight: 700; font-variant-numeric: tabular-nums; }
.withdrawal-legend-share { grid-area: share; color: #87908b; font-size: 11px; text-align: right; font-variant-numeric: tabular-nums; }
.withdrawal-legend-bar { grid-area: bar; height: 4px; overflow: hidden; border-radius: 4px; background: rgba(255,255,255,.05); }
.withdrawal-legend-bar i { display: block; height: 100%; border-radius: 4px; }
.withdrawal-legend-item.is-zero .withdrawal-legend-label,
.withdrawal-legend-item.is-zero .withdrawal-legend-count { color: #6f7974; }
.withdrawal-reason { display: inline-flex; align-items: center; gap: 7px; color: #dce2df; white-space: nowrap; }
.withdrawal-reason i { width: 8px; height: 8px; border-radius: 2px; }
.withdrawal-detail { max-width: 260px; }
.withdrawal-detail-text { display: -webkit-box; overflow: hidden; color: #c9d1cd; -webkit-box-orient: vertical; -webkit-line-clamp: 1; white-space: pre-wrap; overflow-wrap: anywhere; }
.withdrawal-detail.is-expanded .withdrawal-detail-text { display: block; }
.withdrawal-schedule { white-space: nowrap; }
.withdrawal-schedule time, .withdrawal-schedule small { display: block; }
.withdrawal-dday { display: inline-block; margin-bottom: 3px; color: #f0c477; font-size: 11px; }
.withdrawal-muted { color: #6f7974; font-size: 10px; }
.withdrawal-row { cursor: default; }
.withdrawal-list .support-table-wrap table { min-width: 980px; }

/* ===== 반응형 ===== */
@media (max-width: 1180px) {
    .support-detail { grid-template-columns: 1fr; }
    .support-detail-aside { position: static; }
    .support-side-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
    .withdrawal-donut-layout { grid-template-columns: 1fr; justify-items: center; }
    .withdrawal-legend { width: 100%; }
}
@media (max-width: 720px) {
    .support-filters { padding: 16px; }
    .support-search-box { max-width: none; }
    .support-editor-meta { grid-template-columns: 1fr; }
    .support-editor-head { flex-direction: column; align-items: stretch; }
    .support-side-actions { grid-template-columns: 1fr; }
    .support-article { padding: 24px 18px 30px; border-radius: 12px; }
    .support-article-text { font-size: 14px; }
    .inquiry-facts { grid-template-columns: 1fr; }
    .support-dialog-head, .support-dialog-body, .support-dialog-foot { padding-inline: 18px; }
    .support-dialog-message { margin-inline: 18px; }
    .inquiry-status-wrap { width: 100%; justify-content: space-between; }
    .support-dialog-foot .secondary-action { width: 100%; }
    .withdrawal-range .support-field input { width: 100%; }
    .withdrawal-range { width: 100%; display: grid; grid-template-columns: 1fr auto 1fr; }
    .withdrawal-range .primary-action { grid-column: 1 / -1; }
    .withdrawal-donut { width: 210px; }
    .support-editor-footer { flex-wrap: wrap; }
    .support-save-status { flex-basis: 100%; }
}
@media (prefers-reduced-motion: reduce) {
    .withdrawal-donut-segment { transition: none; }
}

/* ===== 가독성 보정(2026-10-14): 자주 쓰는 서비스 관리 화면의 글자 크기·대비·간격을 올린다. ===== */
.support-panel .summary-grid span { color: #9aa39e; font-size: 12px; }
.support-panel .data-toolbar h2 { font-size: 17px; }
.support-panel .data-toolbar p { color: #8a948f; font-size: 12px; }
.support-panel .work-search-box input { height: 42px; font-size: 13px; }
.support-panel .work-filter-label { color: #c9d1cd; font-size: 12px; }
.support-panel th { height: 46px; color: #8a948f; font-size: 11px; letter-spacing: .06em; }
.support-panel td { padding: 16px 18px; color: #c9d1cd; font-size: 13px; }
.support-panel .support-title-cell strong { max-width: 520px; font-size: 14px; }
.support-panel .support-category-badge { padding: 5px 11px; font-size: 11px; }
.support-panel .status-badge, .support-dialog .status-badge, .support-dialog .support-category-badge { padding: 6px 11px; font-size: 11px; }
.support-panel .table-action {
    margin-left: 4px;
    border: 1px solid #2c3631;
    border-radius: 7px;
    padding: 7px 11px;
    background: rgba(255,255,255,.03);
    color: #c9d1cd;
    font-size: 11.5px;
    font-weight: 700;
}
.support-panel .table-action:hover { border-color: rgba(36,185,129,.45); background: rgba(15,125,87,.12); color: #fff; }
.support-panel .table-action.publish { border-color: rgba(36,185,129,.35); color: #69d9ae; }
.support-panel .support-requester strong { font-size: 13px; }
.support-panel .support-requester span { font-size: 11.5px; }
.support-panel .pagination button { font-size: 12px; }
.support-panel .support-state strong { font-size: 14px; }
.support-panel .support-state p { font-size: 12px; }
.support-back-link { font-size: 13px; }
/* 상세 */
.support-panel .support-article-meta { font-size: 13px; }
.support-panel .support-article-title { font-size: 30px; }
.support-panel .support-article-rich, .support-panel .support-article-text { font-size: 15.5px; line-height: 1.9; }
.support-panel .support-side-description { color: #9aa39e; font-size: 12px; }
.support-panel .support-facts > div { padding: 12px 14px; }
.support-panel .support-facts dt { font-size: 12px; }
.support-panel .support-facts dd { font-size: 12.5px; }
.support-panel .support-side-note { color: #8a948f; font-size: 12px; }
.support-panel .support-article-missing strong { font-size: 13px; }
.support-panel .support-article-missing span { font-size: 12px; }
/* 작성·수정 */
.support-panel .support-field > span, .support-panel .support-field-label { font-size: 12.5px; }
.support-panel .support-field input, .support-panel .support-field select { height: 44px; font-size: 14px; }
.support-panel .support-editor-body-head p { color: #8a948f; font-size: 12px; }
.support-panel .support-counter-line, .support-panel .support-counter { font-size: 12px; }
.support-panel .support-add-bar small, .support-panel .support-help { color: #8a948f; font-size: 11.5px; }
.support-panel .support-banner { font-size: 12px; }
.support-panel .support-banner strong { font-size: 13px; }
.support-panel .support-save-status { font-size: 12px; }
.support-panel .support-field-error { font-size: 11.5px; }
/* 1:1 문의 모달 */
.support-dialog .support-dialog-head h2 { font-size: 22px; }
.support-dialog .inquiry-received { font-size: 12px; }
.support-dialog .inquiry-facts dt { font-size: 11.5px; }
.support-dialog .inquiry-facts dd { font-size: 13px; }
.support-dialog .inquiry-facts code { font-size: 12px; }
.support-dialog .inquiry-body-block h3 { font-size: 12px; }
.support-dialog .inquiry-body { font-size: 14px; }
.support-dialog .inquiry-status-label { font-size: 12px; }
.support-dialog .inquiry-status-option { font-size: 13px; }
.support-dialog .support-dialog-message { font-size: 12.5px; }

/* ===== 편집기 대화상자(링크·이미지) 레이아웃 정돈 ===== */
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-content { width: min(560px, calc(100vw - 32px)); max-width: none; margin: 6vh auto; border-radius: 14px; box-shadow: 0 30px 90px rgba(0,0,0,.6); }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-header { display: flex; align-items: center; height: auto; padding: 16px 22px; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-header .se-modal-title { float: none; order: 1; flex: 1 1 auto; font-size: 15px; line-height: 1.4; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-header .se-dialog-close { float: none; order: 2; width: 34px; height: 34px; border: 1px solid #2c3631; border-radius: 9px; color: #aab2ae; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-body { padding: 18px 22px 4px; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form { margin: 0 0 16px; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form > label { display: block; margin: 0 0 8px; color: #dce2df; font-size: 12.5px; font-weight: 700; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form .se-input-form { height: 42px; padding: 0 12px; font-size: 13.5px; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form .se-dialog-form-files { gap: 8px; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form .se-dialog-form-files > input[type="file"] { height: 42px; padding: 6px 10px; border: 1px solid #2c3631; border-radius: 8px; background: #0c0f0d; color: #c9d1cd; font-size: 12.5px; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form .se-dialog-form-files > input[type="file"]::file-selector-button { margin-right: 12px; border: 1px solid #2c3631; border-radius: 6px; padding: 6px 12px; background: #1c2922; color: #dde9e1; cursor: pointer; font-size: 12px; font-weight: 700; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-form .se-dialog-form-files .se-dialog-files-edge-button { flex: 0 0 42px; width: 42px; height: 42px; border-radius: 8px; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; min-height: 0; padding: 14px 22px 18px; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-footer > div { float: none; display: flex; flex-wrap: wrap; gap: 6px; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-footer > div label { display: inline-flex; align-items: center; gap: 7px; margin: 0; border: 1px solid #2c3631; border-radius: 20px; padding: 7px 12px; color: #c9d1cd; font-size: 12px; font-weight: 700; cursor: pointer; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-footer > div label:has(input:checked) { border-color: rgba(36,185,129,.45); background: rgba(15,125,87,.14); color: #fff; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-footer input[type="radio"] { width: 14px; height: 14px; margin: 0; accent-color: #28b982; }
.support-rich-editor .sun-editor .se-dialog .se-dialog-inner .se-dialog-content .se-btn-primary { margin: 0 0 0 auto !important; min-height: 40px; padding: 0 20px; font-size: 13px; font-weight: 700; }
/* 저장 계약에 없는 항목은 숨긴다: 이미지 크기 입력(마우스로 조절), 링크 미리보기·북마크·새창/다운로드 옵션 */
.support-rich-editor .sun-editor .se-dialog-image .se-dialog-form:has(._se_image_size_x),
.support-rich-editor .sun-editor .se-dialog .se-anchor-preview-form,
.support-rich-editor .sun-editor .se-dialog-content:not(.se-dialog-image) .se-dialog-form-files > button,
.support-rich-editor .sun-editor .se-dialog-content:not(.se-dialog-image) .se-dialog-form-footer { display: none; }

/* ===== 미리보기 글꼴·간격은 사용자 앱과 맞춘다(관리자 가독성 보정보다 뒤에 두어 우선한다) ===== */
.support-preview .support-board .support-preview-title { margin: 0 0 16px; font-size: 18px; font-weight: 700; line-height: 1.45; }
.support-preview .support-board .support-article-rich, .support-preview .support-board .support-article-text { font-size: 14px; line-height: 1.7; }
.support-preview .support-board .support-article-rich p, .support-preview .support-board .support-article-rich div { margin: 0; }
.support-preview .support-board .support-preview-divider { margin-bottom: 20px; }
.support-preview .support-board .support-article-figure { margin: 0 0 16px; }
.support-preview .support-board .support-article-figure:not(.has-width) { width: 100%; }
.support-preview .support-board .support-article-figure:not(.has-width) .support-image img { width: 100%; }
.support-preview .support-preview-badge { border: 0; border-radius: 4px; padding: 3px 7px; background: #2b2b2b; color: #d9d9d9; font-size: 11px; font-weight: 700; }
.support-preview .support-preview-badge[data-resource="notices"] { background: #e8842e; color: #1a1006; }
.support-preview .support-board .support-preview-date { font-size: 12.5px; color: #8d8d8d; }
.support-preview .support-phone .support-preview-title { margin: 0 0 14px; font-size: 16px; font-weight: 700; line-height: 1.45; }
.support-preview .support-phone .support-article-rich, .support-preview .support-phone .support-article-text { font-size: 13px; line-height: 1.65; }
.support-preview .support-phone .support-article-rich p, .support-preview .support-phone .support-article-rich div { margin: 0; }
.support-preview .support-phone .support-article-rich h2, .support-preview .support-phone .support-article-rich h3, .support-preview .support-phone .support-article-rich h4 { margin: .8em 0 .3em; }
