.jmc-editor :is(.jac-options, .jac-fields, .jac-popup) { box-sizing: border-box; min-width: 0; color: #c7c7ce; font: 12px/20px "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", Arial, sans-serif; }
.jmc-editor :is(.jac-options, .jac-fields, .jac-popup) * { box-sizing: border-box; }
.jmc-editor :is(.jac-options, .jac-fields, .jac-popup) [hidden] { display: none !important; }
.jmc-editor :is(.jac-options, .jac-fields, .jac-popup) button { min-width: 0; min-height: 0; margin: 0; font: inherit; }
.jmc-editor :is(.jac-options, .jac-fields, .jac-popup) button svg { display: block; flex: 0 0 auto; width: 14px; height: 14px; }
.jmc-editor :is(.jac-options, .jac-fields, .jac-popup) :is(button, input, [tabindex]):focus-visible { outline: 2px solid #83d2ff; outline-offset: 2px; }
.jmc-editor :is(.jac-options) { display: flex; flex: 1 1 auto; align-items: center; flex-wrap: wrap; gap: 5px; }
.jmc-editor :is(.jac-options) .jac-option { display: inline-flex; align-items: center; gap: 5px; min-height: 32px; padding: 6px 8px; border: 0; border-radius: 6px; background: #ffffff06; color: #aaaab4; font-size: 12px; line-height: 20px; white-space: nowrap; }
.jmc-editor :is(.jac-options) .jac-option:hover, .jmc-editor :is(.jac-options) .jac-option[aria-expanded="true"] { background: #ffffff12; color: #e0e0e7; }
.jmc-editor :is(.jac-options) .jac-option > svg { width: 10px; height: 10px; color: #7d7d87; }
.jmc-editor :is(.jac-options) .jac-new { padding: 0 3px; border-radius: 3px; background: #87d8a51a; color: #86d3aa; font-size: 9px; line-height: 14px; }
.jmc-editor :is(.jac-fields) { display: flex; align-items: center; gap: 6px; }
.jmc-editor :is(.jac-fields) .jac-reference { display: inline-flex; align-items: center; gap: 5px; padding: 3px 7px; border: 0; border-radius: 6px; background: transparent; color: #a7a7b0; font-size: 11px; }
.jmc-editor :is(.jac-fields) .jac-reference:hover { background: #ffffff0a; color: #dedee5; }
.jmc-editor :is(.jac-popup) { position: absolute; z-index: 150; width: 280px; max-width: calc(100% - 16px); max-height: calc(100dvh - 16px); padding: 12px; overflow: auto; border: 1px solid #ffffff0d; border-radius: 10px; outline: none; background: #252526; box-shadow: 0 8px 30px #0005; overscroll-behavior: contain; }
.jmc-editor :is(.jac-popup) .jac-popup-heading { margin: 0 0 9px; font-size: 12px; line-height: 20px; font-weight: 500; color: #e1e1e7; }
.jmc-editor :is(.jac-popup) :is(.jac-pending, .jac-popup-status) { margin: 0; color: #9d9da7; font-size: 11px; line-height: 18px; }
.jmc-editor :is(.jac-popup) .jac-popup-status { margin-top: 8px; }
.jmc-editor :is(.jac-popup) .jac-choice { display: flex; align-items: center; width: 100%; min-height: 34px; padding: 6px 9px; border: 0; border-radius: 6px; background: transparent; color: #bdbdc6; text-align: left; }
.jmc-editor :is(.jac-popup) .jac-choice:hover, .jmc-editor :is(.jac-popup) .jac-choice.is-selected { background: #ffffff0c; color: #eeeeef; }
.jmc-editor :is(.jac-popup).jac-duration { width: 400px; padding: 16px; }
.jmc-editor :is(.jac-popup) .jac-duration-row { display: flex; align-items: center; gap: 12px; margin-top: 18px; }
.jmc-editor :is(.jac-popup) .jac-duration-row input[type="range"] { display: block; flex: 1 1 auto; width: 0; min-width: 0; height: 36px; margin: 0; accent-color: #dedee5; }
.jmc-editor :is(.jac-popup) .jac-duration-number { flex: 0 0 92px; width: 92px; height: 36px; padding: 6px 9px; border: 1px solid #ffffff17; border-radius: 7px; background: #1a1a1c; color: #dedee5; font: inherit; text-align: center; }
.jmc-editor :is(.jac-popup) .jac-duration-number[aria-invalid="true"] { border-color: #eaa17b; }
.jmc-editor :is(.jac-popup) .jac-duration-ticks { position: relative; width: calc(100% - 104px); height: 18px; margin-top: 2px; color: #888891; font-size: 10px; line-height: 16px; }
.jmc-editor :is(.jac-popup) .jac-duration-tick { position: absolute; top: 0; transform: translateX(-50%); }
.jmc-editor :is(.jac-popup) .jac-duration-tick:first-child { transform: none; }
.jmc-editor :is(.jac-popup) .jac-duration-tick:last-child { transform: translateX(-100%); }
@media (prefers-reduced-motion: reduce) { .jmc-editor :is(.jac-options, .jac-fields, .jac-popup) * { animation: none !important; transition: none !important; } }


.jmc-editor .jac-runtime-input-row { display: flex; align-items: center; gap: 8px; margin: 10px 0; }
.jmc-editor .jac-runtime-input { flex: 1 1 auto; width: 100%; min-width: 0; min-height: 36px; padding: 8px 10px; border: 1px solid #ffffff17; border-radius: 7px; background: #1a1a1c; color: #dedee5; font: inherit; }
.jmc-editor .jac-runtime-input-row button { flex: 0 0 auto; min-height: 36px; padding: 8px 12px; border: 0; border-radius: 7px; background: #414145; color: #ededf1; }
.jmc-editor .jac-runtime-field { display: flex; flex-direction: column; gap: 8px; min-width: 0; padding: 8px 0; }
.jmc-editor .jac-runtime-field textarea { min-height: 72px; resize: vertical; }
