.prototype-version { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; width: fit-content; max-width: 100%; margin: 3px 0; color: #5275ab; font: inherit; font-size: 12px; line-height: 1.5; text-decoration: none; overflow-wrap: anywhere; cursor: pointer; }
.prototype-version:hover { color: #1f5fff; }
.prototype-version:hover .version-summary { text-decoration: underline; }
.version-number { display: inline-flex; flex-shrink: 0; align-items: center; max-width: 100%; padding: 1px 6px; border: 1px solid #cfdef8; border-radius: 5px; background: #edf4ff; color: #1f5fff; font-size: 11px; font-weight: 650; line-height: 18px; overflow-wrap: anywhere; }
.version-summary { min-width: 0; overflow-wrap: anywhere; }
.prototype-version:focus-visible { outline: 2px solid #1f5fff; outline-offset: 3px; border-radius: 3px; }
.version-dialog { box-sizing: border-box; width: min(620px, calc(100vw - 28px)); max-height: 85vh; max-height: 85dvh; overflow: auto; padding: 24px; border: 1px solid #dce6f5; border-radius: 18px; background: #fafdff; color: #243654; box-shadow: 0 24px 80px #18315333; font: 14px/1.5 "PingFang SC", "Microsoft YaHei", sans-serif; }
.version-dialog::backdrop { background: #24365455; backdrop-filter: blur(3px); }
.version-dialog *, .version-dialog *::before, .version-dialog *::after { box-sizing: border-box; }
.version-dialog__header { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 18px; }
.version-dialog h2 { min-width: 0; margin: 0; font-size: 19px; overflow-wrap: anywhere; }
.version-dialog h2:focus { outline: none; }
.version-dialog button, .version-dialog a { display: inline-flex; align-items: center; justify-content: center; min-height: 34px; padding: 6px 11px; border: 1px solid #dce6f5; border-radius: 8px; background: white; color: #47658e; font: inherit; font-size: 12px; text-decoration: none; cursor: pointer; }
.version-dialog button:hover, .version-dialog a:hover { border-color: #b7cdf1; background: #eff6ff; }
.version-dialog button:disabled { opacity: .5; cursor: default; }
.version-dialog .version-primary { background: #1f5fff; border-color: #1f5fff; color: white; }
.version-dialog .version-danger { color: #b42318; }
.version-dialog :is(button, a, input, select):focus-visible { outline: 2px solid #1f5fff; outline-offset: 2px; }
.version-dialog .version-dialog__close { flex: none; width: 34px; padding: 7px; border-color: transparent; background: transparent; color: #8a94a3; }
.version-dialog .version-dialog__close:hover { border-color: transparent; background: #eef2f6; color: #526176; }
.version-dialog__close svg, .version-entry__preview svg, .version-entry__toggle svg, .version-edit svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.version-list { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.version-entry { min-width: 0; padding: 16px; border: 1px solid #e0e9f6; border-radius: 12px; background: white; }
.version-entry--record { display: grid; grid-template-columns: minmax(0, 1fr) 36px; align-items: start; gap: 12px; }
.version-entry--admin { grid-template-columns: minmax(0, 1fr) 36px; gap: 8px; }
.version-entry--admin .version-record { grid-column: 1; grid-row: 1; }
.version-entry--admin .version-record__summary::before { display: none; }
.version-entry--admin .version-record__summary { cursor: default; }
.version-entry--selected { border-color: #b7cdf1; background: #f7faff; }
.version-dialog .version-entry__toggle { grid-column: 2; grid-row: 1; width: 36px; min-height: 36px; padding: 8px; border-color: transparent; background: transparent; color: #71819a; }
.version-dialog .version-entry__toggle:hover { border-color: transparent; background: #eff6ff; color: #1f5fff; }
.version-entry__toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.version-dialog .version-edit { min-height: 28px; width: 28px; padding: 5px; border-color: transparent; background: transparent; color: #71819a; vertical-align: middle; }
.version-edit svg { width: 16px; height: 16px; }
.version-record { min-width: 0; }
.version-record__summary { display: flex; align-items: center; gap: 8px; min-height: 36px; cursor: pointer; list-style: none; }
.version-record__summary::-webkit-details-marker { display: none; }
.version-record__summary::before { content: ''; flex: none; width: 6px; height: 6px; border-right: 1.5px solid #71819a; border-bottom: 1.5px solid #71819a; transform: rotate(-45deg); }
.version-record[open] > .version-record__summary::before { transform: rotate(45deg); }
.version-record[open] .version-entry__details { padding-top: 8px; }
.version-entry__details { min-width: 0; }
.version-entry__details .version-note { margin: 6px 0 0; }
.version-entry__details > .version-actions { margin-top: 14px; }
.version-record__summary:focus-visible { outline: 2px solid #1f5fff; outline-offset: 3px; border-radius: 4px; }
.version-inline { border-radius: 4px; }
.version-inline[contenteditable="plaintext-only"] { cursor: text; }
.version-inline[contenteditable="plaintext-only"]:hover { box-shadow: 0 0 0 3px #edf4ff; }
.version-inline:focus { outline: 2px solid #b7cdf1; outline-offset: 3px; background: #f1f6ff; }
.version-inline[aria-invalid="true"] { outline: 1px solid #b42318; }
.version-create { margin-top: 18px; border: 1px solid #dce6f5; border-radius: 12px; background: #f1f6ff; }
.version-create > summary { padding: 14px 16px; color: #47658e; font-weight: 650; cursor: pointer; }
.version-create .version-form { margin: 0; padding-top: 4px; border: 0; background: transparent; }
.version-dialog .version-file-select { justify-content: space-between; gap: 12px; max-width: 100%; min-width: 0; text-align: left; }
.version-source-name { min-width: 0; overflow-wrap: anywhere; }
.version-file-select svg { flex: none; width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linejoin: round; }
.version-dialog [hidden] { display: none; }
.version-entry--record > :is(.version-actions, .version-form, .version-feedback) { grid-column: 1 / -1; }
.version-dialog .version-entry__preview { grid-column: 2; grid-row: 1; width: 36px; min-height: 36px; padding: 8px; border-color: transparent; background: transparent; color: #71819a; }
.version-dialog .version-entry__preview:hover { border-color: transparent; background: #eff6ff; color: #1f5fff; }
.version-entry__heading { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; overflow-wrap: anywhere; }
.version-badge { padding: 2px 7px; border-radius: 5px; background: #edf4ff; color: #1f5fff; font-size: 11px; }
.version-status { flex: none; max-width: 100%; padding: 2px 7px; border: 1px solid transparent; border-radius: 5px; background: #eff6ff; color: #1d4ed8; font: inherit; font-size: 11px; line-height: 18px; }
.version-status[data-status="finalized"] { color: #047857; background: #ecfdf5; }
.version-status[data-status="pending"] { color: #92400e; background: #fffbeb; }
select.version-status { cursor: pointer; border-color: #cfdef8; }
.version-note { margin: 6px 0 10px; color: #71819a; font-size: 12px; overflow-wrap: anywhere; }
.version-error { margin: 10px 0; color: #b42318; font-size: 12px; }
.version-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.version-form { display: grid; gap: 12px; margin: 12px 0; padding: 16px; border: 1px solid #dce6f5; border-radius: 12px; background: #f1f6ff; }
.version-feedback:empty { display: none; }
@media (max-width: 480px) { .version-dialog { padding: 16px; } .version-entry { padding: 12px; } }
