/* Native UI subtrees own their styles, including portals and print hosts. */
@scope (:root:not([data-kms-ui="native"])) to ([data-kms-ui="native"]) {
.kms-cd-caption{display:block;font-size:12px;line-height:16px;color:#334155;margin-bottom:4px;white-space:normal}
/* Shared check-dropdown adapter. Existing checkbox nodes and form ancestry stay intact. */
.kms-cd-trigger.kms-cd-trigger {
    box-sizing: border-box !important; display: inline-flex !important; align-items: center !important;
    justify-content: space-between !important; gap: 6px !important; flex: 0 0 var(--kms-cd-width, 160px) !important;
    width: var(--kms-cd-width, 160px) !important; min-width: var(--kms-cd-width, 160px) !important; max-width: var(--kms-cd-width, 160px) !important;
    height: 32px !important; min-height: 32px !important; max-height: 32px !important;
    padding: 5px 9px !important; border: 1px solid #cbd5e1 !important; border-radius: 2px !important;
    background: #fff !important; color: #0f172a !important; cursor: pointer !important;
    overflow: hidden !important; white-space: nowrap !important; vertical-align: middle !important;
    font: 400 13px/20px KmsMenuUI, Pretendard, system-ui, sans-serif !important; text-align: left !important;
    letter-spacing: 0 !important; box-shadow: 0 1px 2px rgb(15 23 42 / 3%) !important;
}
.kms-cd-wrap.kms-cd-wrap { flex: 0 0 var(--kms-cd-width, 160px) !important; width: var(--kms-cd-width, 160px) !important; min-width: var(--kms-cd-width, 160px) !important; max-width: var(--kms-cd-width, 160px) !important; }
.kms-cd-trigger.kms-cd-trigger::before, .kms-cd-trigger.kms-cd-trigger::after { display: none !important; content: none !important; }
.kms-cd-trigger.kms-cd-trigger:hover { border-color: #93c5fd !important; }
.kms-cd-trigger.kms-cd-trigger[aria-expanded="true"], .kms-cd-trigger.kms-cd-trigger:focus-visible { border-color: #3b82f6 !important; outline: 2px solid #dbeafe !important; outline-offset: 1px !important; }
.kms-cd-trigger.kms-cd-trigger .kms-cd-label { display: block !important; flex: 1 1 0 !important; min-width: 0 !important; max-width: none !important; margin: 0 !important; padding: 0 !important; overflow: hidden !important; white-space: nowrap !important; text-overflow: ellipsis !important; font: inherit !important; color: inherit !important; line-height: 20px !important; }
.kms-cd-trigger.kms-cd-trigger[data-empty="true"] .kms-cd-label { color: #64748b !important; }
.kms-cd-trigger.kms-cd-trigger .kms-cd-count { display: inline-flex !important; flex: 0 0 28px !important; width: 28px !important; min-width: 28px !important; height: 20px !important; align-items: center !important; justify-content: center !important; margin: 0 !important; padding: 0 3px !important; box-sizing: border-box !important; background: #dbeafe !important; color: #1d4ed8 !important; border: 0 !important; border-radius: 2px !important; font: 600 11px/20px KmsMenuUI, system-ui, sans-serif !important; }
.kms-cd-trigger.kms-cd-trigger .kms-cd-chevron { display: block !important; flex: 0 0 12px !important; width: 12px !important; height: 12px !important; color: #64748b !important; }
.kms-cd-panel.kms-cd-panel {
    box-sizing: border-box !important; position: fixed !important; inset: auto !important;
    width: min(280px, calc(100vw - 16px)) !important; min-width: min(240px, calc(100vw - 16px)) !important; max-width: calc(100vw - 16px) !important;
    height: auto !important; margin: 0 !important; padding: 0 6px 6px !important;
    z-index: 750 !important; border: 1px solid #cbd5e1 !important; border-radius: 2px !important;
    background: #fff !important; color: #0f172a !important; box-shadow: 0 10px 25px rgba(15,23,42,.14) !important;
    overflow: auto !important; overscroll-behavior: contain !important; scrollbar-width: thin !important;
    font: 400 13px/20px KmsMenuUI, Pretendard, system-ui, sans-serif !important; text-align: left !important; letter-spacing: 0 !important;
}
.kms-cd-panel.kms-cd-panel[data-cd-open="false"] { display: none !important; }
.kms-cd-panel.kms-cd-panel[data-cd-open="true"] { display: block !important; }
.kms-cd-panel.kms-cd-panel::backdrop { background: transparent !important; pointer-events: none !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-toolbar { position: sticky !important; top: 0 !important; z-index: 2 !important; padding: 10px 4px !important; margin: 0 0 4px !important; background: #fff !important; border-bottom: 1px solid #e2e8f0 !important; text-align: left !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-actions { display: flex !important; justify-content: space-between !important; align-items: center !important; gap: 8px !important; padding: 0 !important; margin: 0 !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-actions button { appearance: none !important; box-sizing: border-box !important; width: auto !important; height: 26px !important; min-height: 26px !important; max-height:26px!important; margin: 0 !important; padding: 0 9px !important; border: 1px solid #cbd5e1 !important; border-radius: 2px !important; background: #eff6ff !important; color: #1d4ed8 !important; font: 600 12px/20px KmsMenuUI, system-ui, sans-serif !important; cursor: pointer !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-actions button:hover { background: #dbeafe !important; }
/* A contenteditable searchbox intentionally adds no input: legacy input selectors and form payloads stay exact. */
.kms-cd-panel.kms-cd-panel .kms-cd-search { display: block !important; box-sizing: border-box !important; height: 28px !important; min-height: 28px !important; max-height:28px!important; margin: 8px 0 0 !important; padding: 3px 9px !important; border: 1px solid #cbd5e1 !important; border-radius: 2px !important; background: #f8fafc !important; color: #0f172a !important; overflow: hidden !important; white-space: nowrap !important; font: 400 13px/20px KmsMenuUI, system-ui, sans-serif !important; cursor: text !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-search:empty::before { content: '항목 검색…'; color: #64748b; pointer-events: none; }
.kms-cd-panel.kms-cd-panel .kms-cd-search:focus-visible { outline: 2px solid #93c5fd !important; outline-offset: -1px !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-row { display: flex !important; align-items: center !important; gap: 8px !important; box-sizing: border-box !important; width: 100% !important; min-height: 32px !important; height: auto !important; margin: 2px 0 !important; padding: 6px 10px !important; border: 0 !important; border-radius: 2px !important; background: #fff !important; color: #334155 !important; cursor: pointer !important; white-space: normal !important; overflow-wrap: anywhere !important; font: 400 13px/20px KmsMenuUI, system-ui, sans-serif !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-row:hover { background: #f1f5f9 !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-row:has(input:checked) { background: #fff !important; color: #1e293b !important; font-weight: 500 !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-row input[type="checkbox"] { accent-color: #2563eb !important; flex: 0 0 16px !important; width: 16px !important; height: 16px !important; min-height: 16px !important; margin: 0 !important; padding: 0 !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-row span { font: inherit !important; color: inherit !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-hidden, .kms-cd-panel.kms-cd-panel .kms-cd-legacy-header, .kms-cd-panel.kms-cd-panel .kms-cd-search[hidden], .kms-cd-panel.kms-cd-panel .kms-cd-empty[hidden] { display: none !important; }
.kms-cd-panel.kms-cd-panel .kms-cd-empty { display: block; padding: 12px; margin: 0; color: #64748b; font: 400 13px/20px KmsMenuUI, system-ui, sans-serif; }
@media print { .kms-cd-panel.kms-cd-panel { display: none !important; } }

.kms-cd-stable-count.kms-cd-stable-count { display: inline-block !important; width: 8ch !important; min-width: 8ch !important; max-width: 8ch !important; font-variant-numeric: tabular-nums !important; text-align: right !important; }

.kms-cd-trigger.kms-cd-trigger, .kms-cd-panel.kms-cd-panel { overflow-anchor: none !important; }

.kms-cd-panel.kms-cd-panel :is(.kms-cd-search,.kms-cd-action) { height:28px !important; box-sizing:border-box !important; border-radius:2px !important; }

/* One design for underscore, hyphenated and dynamic checkbox-dropdown markup. */
.kms-cd-panel.kms-cd-panel .kms-cd-actions button[data-kms-cd-bulk="all"]{background:#2563eb!important;border-color:#1d4ed8!important;color:#fff!important}
.kms-cd-panel.kms-cd-panel .kms-cd-actions button[data-kms-cd-bulk="all"]:hover{background:#1d4ed8!important}
.kms-cd-panel.kms-cd-panel .kms-cd-actions button[data-kms-cd-bulk="clear"]{background:#fff!important;border-color:#cbd5e1!important;color:#334155!important}
.kms-cd-panel.kms-cd-panel .kms-cd-actions button[data-kms-cd-bulk="clear"]:hover{background:#f1f5f9!important}
.kms-cd-panel.kms-cd-panel .kms-cd-list{display:block;margin:0;padding:0;min-width:0}
.kms-cd-panel.kms-cd-panel .kms-cd-row:is([hidden],[style*="display:none"],[style*="display: none"]){display:none!important}
.kms-cd-panel.kms-cd-panel .kms-cd-row:hover{background:#f1f5f9!important}
.kms-cd-panel.kms-cd-panel input.dropdown-search.kms-cd-search{width:100%!important;max-width:100%!important;float:none!important}
.kms-cd-panel.kms-cd-panel .kms-cd-actions button{display:inline-flex!important;align-items:center!important;justify-content:center!important}

}
