/* Persistent, non-blinking save feedback and a non-modal return banner. */
#topbar{height:auto;min-height:62px;flex-wrap:wrap;padding:8px 14px;gap:8px}
.topbar-right{flex-wrap:wrap;flex-shrink:1;min-width:0}
.save-status{display:flex;align-items:center;gap:8px;flex-wrap:wrap;max-width:100%;min-height:44px;padding:6px 10px;border:1px solid var(--b2);border-radius:10px;color:var(--t1);background:var(--s2)}
#syncLbl{font-size:16px;line-height:1.4;overflow-wrap:anywhere}
.save-status .sync-dot{width:10px;height:10px;background:var(--t3)}
.save-status[data-state="saved"] .sync-dot{background:var(--ok)}
.save-status[data-state="saving"] .sync-dot,.save-status[data-state="dirty"] .sync-dot{background:var(--warn)}
.save-status[data-state="error"] .sync-dot,.save-status[data-state="conflict"] .sync-dot{background:var(--err)}
.save-status[data-state="error"],.save-status[data-state="conflict"]{border-color:var(--err)}
.status-retry,.resume-actions button{min-height:44px;padding:10px 16px;font:inherit;font-size:16px;line-height:1.35;border-radius:8px;border:1px solid var(--b2);cursor:pointer}
.status-retry{color:var(--t1);background:var(--s1);border-color:var(--err)}
.status-retry:disabled{opacity:.6;cursor:wait}
.resume-banner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;flex-shrink:0;padding:14px 18px;background:var(--s1);border-bottom:1px solid var(--gold);color:var(--t1)}
.resume-banner p{margin:0;font-size:18px;line-height:1.7;overflow-wrap:anywhere}
.resume-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.resume-continue{color:#171000;background:var(--gold);font-weight:700!important}
.resume-later{color:var(--t1);background:var(--s2)}
.resume-forget{color:var(--t2);background:transparent}
.resume-banner[hidden],.status-retry[hidden]{display:none!important}
.resume-actions button:focus-visible,.status-retry:focus-visible{outline:3px solid var(--gold2);outline-offset:3px}
@media(max-width:768px){
  #topbar{height:auto;min-height:62px;padding:calc(8px + env(safe-area-inset-top,0px)) 10px 8px}
  .topbar-center{order:1;flex-basis:100%}.topbar-right{order:2;width:100%}
  .save-status{width:100%}.searchbox{width:100%}
  .resume-banner{padding:12px}.resume-banner p{font-size:16px}
  .resume-actions{width:100%}.resume-continue,.resume-later{flex:1}
  #sidebar{top:var(--app-content-top,62px)}
}
@media print{.resume-banner{display:none!important}}
