.modal.wide.version-history-modal { width: 1010px; }
.version-history-intro { margin: 0 0 15px; color: #7c8877; font-size: 11px; }
.version-checkpoint-form { padding: 14px; margin-bottom: 16px; background: #f6f8f2; border: 1px solid #e4e9de; border-radius: 9px; }
.version-checkpoint-form > label { display: block; margin-bottom: 8px; font-size: 11px; font-weight: 600; color: #627559; }
.version-checkpoint-form > div { display: flex; gap: 8px; }
.version-checkpoint-form input { flex: 1; min-width: 0; }
.version-history-tools { display: flex; justify-content: space-between; align-items: center; font-size: 10px; color: #84917c; margin-bottom: 8px; }
.version-history-tools .button { height: 28px; padding: 0 8px; }
.version-history-layout { display: grid; grid-template-columns: 270px minmax(0,1fr); gap: 18px; align-items: start; }
.version-history-list-pane { min-width: 0; }
#version-history-more { width: 100%; margin-top: 5px; }
.version-history-list { overflow: auto; max-height: min(530px,55vh); max-height: min(530px,55dvh); border: 1px solid #e4e9de; border-radius: 9px; scrollbar-width: thin; }
.version-row { display: flex; flex-direction: column; gap: 6px; width: 100%; padding: 13px 14px; background: white; border: 0; border-bottom: 1px solid #e9ede4; text-align: left; }
.version-row:last-child { border-bottom: 0; }
.version-row:hover { background: #f7faf3; }
.version-row.active { background: #edf3e7; box-shadow: 3px 0 #658559 inset; }
.version-row-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 7px; }
.version-row-heading strong { color: #49603f; font-size: 12px; overflow-wrap: anywhere; }
.version-row-heading strong > span { margin-left: 4px; }
.version-row-heading small { color: #729264; background: #dfead5; padding: 2px 5px; font-size: 9px; border-radius: 3px; flex: 0 0 auto; }
.version-row-summary { font-size: 10px; color: #6c7b61; line-height: 1.65; }
.version-row time, .version-row-author { font-size: 9px; color: #8a9583; }
.version-preview { min-width: 0; }
.version-preview-heading { display: flex; align-items: center; justify-content: space-between; gap: 8px; color: #7e8f73; font-size: 10px; }
.version-readonly-label { background: #f0f3ed; padding: 4px 7px; border-radius: 4px; }
.version-preview h3 { font-size: 16px; line-height: 1.6; margin: 10px 0 6px; color: #425b37; overflow-wrap: anywhere; }
.version-preview-description { margin: 0 0 9px; font-size: 10px; color: #8a957f; }
.version-preview-stage { position: relative; height: 295px; border: 1px solid #dfe6d8; border-radius: 8px; overflow: hidden; background: #f5f7f2; pointer-events: none; user-select: none; }
.version-preview-stage[data-background="dots"] { background-image: radial-gradient(#ccd5c5 .8px,transparent .8px); background-size: 14px 14px; }
.version-preview-stage[data-background="grid"] { background-image: linear-gradient(#e0e6da 1px,transparent 1px),linear-gradient(90deg,#e0e6da 1px,transparent 1px); background-size: 18px 18px; }
.version-preview-world { position: absolute; left: 0; top: 0; width: 0; height: 0; transform-origin: 0 0; }
.version-preview-drawing { position: absolute; inset: 0; overflow: visible; }
.version-preview-element { position: absolute; margin: 0; box-sizing: border-box; transform-origin: center center; }
.version-preview-element.note { padding: 32px 22px 36px; border-radius: 3px 3px 22px 3px; box-shadow: 0 4px 10px rgb(45 59 35 / 10%); font-size: 15px; color: #4b5142; }
.version-preview-element.text { padding: 7px; }
.version-preview-element p { margin: 0; height: 100%; overflow: hidden; white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.8; }
.version-preview-element.sticker { display: grid; place-items: center; }
.version-preview-element.sticker .sticker-content { line-height: 1.15; filter: drop-shadow(3px 0 0 white) drop-shadow(-3px 0 0 white) drop-shadow(0 3px 0 white) drop-shadow(0 -3px 0 white) drop-shadow(0 3px 3px rgb(42 50 35 / 16%)); }
.version-preview-tags { display: flex; flex-wrap: wrap; gap: 5px; position: absolute; left: 22px; right: 20px; bottom: 12px; font-size: 9px; }
.version-preview-tags span { background: rgb(255 255 255 / 45%); padding: 3px 6px; border-radius: 3px; }
.version-empty-canvas { position: absolute; inset: 0; display: grid; place-items: center; color: #9aa590; font-size: 12px; }
.version-preview-content { margin-top: 12px; font-size: 11px; color: #6f7f63; }
.version-preview-content > summary { cursor: pointer; padding: 6px 0; }
.version-preview-content > article { border-bottom: 1px solid #edf1e7; padding: 9px 0; }
.version-preview-content > article > p { white-space: pre-wrap; overflow-wrap: anywhere; margin: 0; }
.version-content-emoji { font-size: 27px; }
.version-content-tags { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 6px; font-size: 9px; }
.version-content-tags > span { background: #eff3e8; border-radius: 3px; padding: 3px 6px; }
.version-restore-help { margin: 14px 0 9px; font-size: 10px; color: #98a38d; }
.version-empty { padding: 23px 14px; margin: 0; line-height: 1.9; color: #94a08a; font-size: 11px; }
@media (max-width: 760px) {
  .version-history-layout { grid-template-columns: minmax(0,1fr); gap: 14px; }
  .version-history-list { max-height: 185px; }
  .version-preview-stage { height: 235px; }
  .version-checkpoint-form > div { flex-direction: column; }
}

.version-preview-element.note:not(.heading-note) { overflow: hidden; }
.version-preview-element.note.heading-note { padding: 10px 16px; border-radius: 2px; }
.version-preview-element.heading-note p { height: auto; min-height: 1.4em; font-weight: 600; line-height: 1.4; white-space: pre; overflow: visible; overflow-wrap: normal; writing-mode: var(--heading-writing-mode, horizontal-tb); text-orientation: mixed; }

.version-preview-element:is(.note, .text) p { height: auto; overflow: visible; }
.version-preview-element.text p { line-height: 1.6; }
