.ep-topbar--autosave { flex-wrap: wrap; }
.ep-topbar--autosave .ep-topbar__left { flex: 1 1 440px; width: auto; }
.ep-topbar--autosave .ep-topbar__title { margin: 0; }
.ep-topbar--autosave .ep-topbar__actions { margin-left: auto; }
.wsem-draft-save { position: relative; flex: 0 0 auto; font: 400 12px/1.4 'Google Sans', system-ui, sans-serif; }
.wsem-save-trigger { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 30px; max-width: 190px; padding: 5px 9px; border: 0; border-radius: 7px; background: transparent; color: #488269; font: inherit; white-space: nowrap; cursor: pointer; transition: background .15s; }
.wsem-save-trigger:hover { background: rgba(82, 127, 110, .08); }
.wsem-save-trigger:focus-visible { outline: 2px solid var(--blue-color, #4265d6); outline-offset: 3px; }
.wsem-save-icon, .wsem-save-icon svg { display: block; width: 15px; height: 15px; flex: 0 0 15px; }
.wsem-draft-save[data-state="local"] .wsem-save-trigger { color: var(--grey-color, #6b7280); }
.wsem-draft-save[data-state="saving"] .wsem-save-trigger { color: var(--grey-color, #6b7280); }
.wsem-draft-save[data-state="saving"] .wsem-save-icon { animation: wsem-save-spin 1s linear infinite; }
.wsem-draft-save[data-state="warning"] .wsem-save-trigger { color: #946320; background: rgba(194, 135, 53, .08); }
.wsem-draft-save[data-state="error"] .wsem-save-trigger { color: #b44848; background: rgba(180, 72, 72, .07); }
.wsem-save-details { position: fixed; z-index: 1100; box-sizing: border-box; padding: 15px 17px; border: 1px solid var(--border-color, #e5e7eb); border-radius: 12px; background: var(--white-color, #fff); color: var(--dark-color, #20252e); box-shadow: 0 8px 28px rgba(25, 34, 48, .12); font-size: 13px; line-height: 1.5; white-space: normal; }
.wsem-save-details[hidden] { display: none !important; }
.wsem-save-details > div + div { margin-top: 12px; }
.wsem-save-details strong, .wsem-save-details span { display: block; }
.wsem-save-details strong { margin-bottom: 3px; font-size: 12px; font-weight: 600; }
.wsem-save-details span { color: var(--grey-color, #68707e); overflow-wrap: anywhere; }
.wsem-recovery-open { overflow: hidden; }
.wsem-recovery { box-sizing: border-box; width: min(460px, calc(100vw - 32px)); max-height: calc(100dvh - 32px); margin: auto; padding: 0; border: 1px solid var(--border-color, #e7e9ee); border-radius: 20px; background: var(--white-color, #fff); color: var(--dark-color, #20252e); box-shadow: 0 24px 80px rgba(15, 23, 42, .22); font: 400 14px/1.55 'Google Sans', system-ui, sans-serif; overflow: auto; }
.wsem-recovery::backdrop { background: rgba(16, 24, 40, .42); backdrop-filter: blur(3px); }
.wsem-recovery__body { padding: 28px 28px 20px; }
.wsem-recovery__icon { display: grid; place-items: center; width: 44px; height: 44px; margin-bottom: 18px; border-radius: 13px; color: var(--blue-color, #4265d6); background: rgba(66, 101, 214, .08); }
.wsem-recovery__icon svg { width: 23px; height: 23px; }
.wsem-recovery__title { margin: 0 0 8px; color: inherit; font: 600 22px/1.3 'Google Sans', system-ui, sans-serif; letter-spacing: -.3px; }
.wsem-recovery__description { margin: 0; color: var(--grey-color, #68707e); }
.wsem-recovery__copy { margin-top: 20px; padding: 13px 15px; border: 1px solid var(--border-color, #e7e9ee); border-radius: 10px; background: var(--bg-grey-color, #f7f8fa); }
.wsem-recovery__copy strong { display: block; font-weight: 500; overflow-wrap: anywhere; }
.wsem-recovery__copy span { display: block; margin-top: 4px; color: var(--grey-color, #68707e); font-size: 12px; }
.wsem-recovery__hint { margin: 16px 0 0; color: var(--grey-color, #68707e); font-size: 12px; }
.wsem-recovery__actions { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: 10px; padding: 0 28px 26px; }
.wsem-recovery__button { padding: 10px 14px; border: 1px solid var(--border-color, #e1e4ea); border-radius: 9px; background: var(--white-color, #fff); color: var(--dark-color, #20252e); font: 500 13px/1.4 'Google Sans', system-ui, sans-serif; cursor: pointer; }
.wsem-recovery__button:hover { background: var(--bg-grey-color, #f7f8fa); }
.wsem-recovery__button--primary { border-color: var(--blue-color, #4265d6); background: var(--blue-color, #4265d6); color: #fff; }
.wsem-recovery__button--primary:hover { background: var(--blue-color, #4265d6); filter: brightness(.95); }
.wsem-recovery__button:focus-visible { outline: 2px solid var(--blue-color, #4265d6); outline-offset: 3px; }
.wsem-recovery__button:disabled { opacity: .65; cursor: wait; }
[data-theme="dark"] .wsem-save-trigger { color: #8cc4aa; }
[data-theme="dark"] .wsem-draft-save[data-state="warning"] .wsem-save-trigger { color: #e1b66f; }
[data-theme="dark"] .wsem-draft-save[data-state="error"] .wsem-save-trigger { color: #ed9696; }
[data-theme="dark"] .wsem-recovery__icon { background: rgba(120, 154, 255, .12); }
@keyframes wsem-save-spin { to { transform: rotate(360deg); } }
@media (max-width: 640px) {
    .ep-topbar--autosave .ep-topbar__left { flex-basis: auto; flex-wrap: wrap; width: 100%; gap: 8px 12px; }
    .ep-topbar--autosave .ep-topbar__title { flex: 1 1 145px; }
    .ep-topbar--autosave .wsem-draft-save { order: 1; }
    .ep-topbar--autosave .theme-toggle { order: 2; }
    .wsem-recovery__body { padding: 24px 22px 18px; }
    .wsem-recovery__actions { flex-direction: column-reverse; padding: 0 22px 22px; }
    .wsem-recovery__button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .wsem-draft-save[data-state="saving"] .wsem-save-icon { animation: none; } }
