body.cloud-locked .sidebar,body.cloud-locked .app,body.cloud-locked #modal{display:none!important}
.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px}
.login-screen[hidden]{display:none}
.login-card{width:min(100%,420px);padding:32px;border:1px solid var(--line);border-radius:18px;background:var(--panel,#171418)}
.login-card h1{font-size:28px;margin-bottom:12px}.login-card p{line-height:1.7;color:var(--muted);margin-bottom:22px}
.login-card .btn{width:100%;margin-top:10px}.login-error{color:#ffa2ae!important;white-space:pre-line}.login-error:empty{display:none}
.cloud-status{font-size:12px;color:var(--muted)}.cloud-status.error{color:#ffa2ae}
.role-switch,.role-label{display:none!important}.top-actions{flex-wrap:wrap}.top-actions .btn{white-space:nowrap}
body.cloud-busy button,body.cloud-busy select{pointer-events:none;opacity:.65}
/* Compact header: keep account controls together, with sync status on its own row. */
@media(max-width:730px){
  .topbar{height:auto;min-height:76px;padding:10px 12px;gap:8px}
  .topbar .brand-mobile{flex-shrink:0;font-size:27px;gap:5px}
  .topbar .brand-mobile .brand-lock{width:18px;height:24px}
  .topbar .top-actions{display:grid;grid-template-columns:auto auto auto;justify-content:end;align-items:center;gap:3px 6px;min-width:0;margin-left:auto}
  .top-actions .cloud-status{grid-column:1/-1;justify-self:end;font-size:10px;line-height:1.4;overflow-wrap:anywhere}
  .top-actions>strong{font-size:11px;white-space:nowrap}
  .top-actions .btn{font-size:11px;min-height:34px;padding:5px 8px;border-radius:7px;line-height:1.3}
  .top-actions [data-action="cloud-retry-save"]{grid-column:1/-1;justify-self:end}
}
